Awight has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/346681 )
Change subject: Log actual commandline rather than redundant parent job slug. ...................................................................... Log actual commandline rather than redundant parent job slug. Change-Id: I2e57112fa528037a0db16f9389bc4320eaf528f9 --- M processcontrol/output_streamer.py M processcontrol/runner.py 2 files changed, 12 insertions(+), 8 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/wikimedia/fundraising/process-control refs/changes/81/346681/1 diff --git a/processcontrol/output_streamer.py b/processcontrol/output_streamer.py index 4735580..39e767b 100644 --- a/processcontrol/output_streamer.py +++ b/processcontrol/output_streamer.py @@ -25,11 +25,12 @@ class OutputStreamer(object): - def __init__(self, process, slug, start_time): + def __init__(self, process, slug, cmdline, start_time): self.out_stream = process.stdout self.err_stream = process.stderr self.pid = process.pid self.slug = slug + self.cmdline = cmdline self.filename = make_logfile_path(slug, start_time) self.logger = None self.threads = {} @@ -37,8 +38,17 @@ def start(self): self.init_logger() + + self.log_header() + self.start_reading(self.out_stream, "stdout") self.start_reading(self.err_stream, "stderr", is_error_stream=True) + + def log_header(self): + # TODO: maybe expose the header as a configurable template. + self.logger.info("===========") + self.logger.info("{cmdline} ({pid})".format(cmdline=self.cmdline, pid=self.pid)) + self.logger.info("-----------") def start_reading(self, stream, stream_name, is_error_stream=False): thread = threading.Thread( @@ -81,12 +91,6 @@ console_handler = logging.StreamHandler(sys.stdout) self.log_handlers.append(console_handler) self.logger.addHandler(console_handler) - - # FIXME: gets written for each subprocess, so the name=slug is not - # quite right. Should be the commandline? - self.logger.info("===========") - self.logger.info("{name} ({pid})".format(name=self.slug, pid=self.pid)) - self.logger.info("-----------") def stop(self): for thread in self.threads.values(): diff --git a/processcontrol/runner.py b/processcontrol/runner.py index 3aef5ae..5ee090a 100644 --- a/processcontrol/runner.py +++ b/processcontrol/runner.py @@ -66,7 +66,7 @@ command = shlex.split(command_string) self.process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=self.job.environment) - streamer = output_streamer.OutputStreamer(self.process, self.job.slug, self.start_time) + streamer = output_streamer.OutputStreamer(self.process, self.job.slug, command_string, self.start_time) self.logfile = streamer.filename streamer.start() -- To view, visit https://gerrit.wikimedia.org/r/346681 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2e57112fa528037a0db16f9389bc4320eaf528f9 Gerrit-PatchSet: 1 Gerrit-Project: wikimedia/fundraising/process-control Gerrit-Branch: master Gerrit-Owner: Awight <awi...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits