aboutsummaryrefslogtreecommitdiff
path: root/rumba/storyboard.py
diff options
context:
space:
mode:
authorMarco Capitani <m.capitani@nextworks.it>2018-02-21 11:47:43 +0100
committerMarco Capitani <m.capitani@nextworks.it>2018-02-27 16:51:26 +0100
commite6af5e64b850be64d5e1d1012e890ca9571b0df0 (patch)
tree60ef94a76aea5bd4fec5843a573cc040aa2211d1 /rumba/storyboard.py
parent0158b68b1736ca8a5fb68de5a56cae234030774c (diff)
downloadrumba-e6af5e64b850be64d5e1d1012e890ca9571b0df0.tar.gz
rumba-e6af5e64b850be64d5e1d1012e890ca9571b0df0.zip
utils & storyboard: add syslog retrieval functionality
Implements #39. Also updated examples.
Diffstat (limited to 'rumba/storyboard.py')
-rw-r--r--rumba/storyboard.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/rumba/storyboard.py b/rumba/storyboard.py
index 26e91fd..ca0cfb5 100644
--- a/rumba/storyboard.py
+++ b/rumba/storyboard.py
@@ -229,7 +229,7 @@ class Server:
def run(self):
for node in self.nodes:
- logfile = "%s_server.log" % self.ap
+ logfile = "/tmp/%s_server.log" % self.ap
script = r'nohup "$@" > %s 2>&1 & echo "$!"' % (logfile,)
run_cmd = self.ap + (
(" " + self.options) if self.options is not None else ""
@@ -434,18 +434,21 @@ class StoryBoard:
for server in self.servers:
server.stop()
- def fetch_logs(self, local_dir='.'):
+ def fetch_logs(self, local_dir=None):
+ if local_dir is None:
+ local_dir = self.experiment.log_dir
if not os.path.isdir(local_dir):
- raise Exception('"%s" is not a directory. Cannot fetch logs.'
+ raise Exception('Destination "%s" is not a directory. '
+ 'Cannot fetch logs.'
% local_dir)
for node in self.server_nodes:
- logs_list = node.execute_command('ls *_server.log')
+ logs_list = node.execute_command('ls /tmp/*_server.log')
logs_list = [x for x in logs_list.split('\n') if x != '']
- logger.info('Log list is:\n%s', logs_list)
+ logger.debug('Log list is:\n%s', logs_list)
node.fetch_files(logs_list, local_dir)
for node in self.client_nodes:
logs_list = node.execute_command('ls /tmp/*.rumba.log '
'|| echo ""')
logs_list = [x for x in logs_list.split('\n') if x != '']
- logger.info('Log list is:\n%s', logs_list)
+ logger.debug('Log list is:\n%s', logs_list)
node.fetch_files(logs_list, local_dir)