From 9723f98950ff643c3117828382e1c869b92c34b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krist=C3=B3f=20T=C3=B3th?= Date: Mon, 28 May 2018 16:36:59 +0200 Subject: [PATCH] Rework ProcessManagingEH log API --- lib/tfw/components/process_managing_event_handler.py | 7 +++---- lib/tfw/mixins/supervisor_mixin.py | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/tfw/components/process_managing_event_handler.py b/lib/tfw/components/process_managing_event_handler.py index 0685b48..2044a38 100644 --- a/lib/tfw/components/process_managing_event_handler.py +++ b/lib/tfw/components/process_managing_event_handler.py @@ -46,13 +46,12 @@ class ProcessManagingEventHandler(EventHandlerBase): data = message['data'] try: self.processmanager(data['command'], data['process_name']) - message['data']['log'] = self.processmanager.read_stdout(data['process_name']) - return message except SupervisorFault as fault: message['data']['error'] = fault.faultString - message['data']['log'] = self.processmanager.read_stderr(data['process_name']) - return message finally: + message['data']['stdout'] = self.processmanager.read_stdout(data['process_name']) + message['data']['stderr'] = self.processmanager.read_stderr(data['process_name']) self.processmanager.clear_logs(data['process_name']) + return message except KeyError: LOG.error('IGNORING MESSAGE: Invalid message received: %s', message) diff --git a/lib/tfw/mixins/supervisor_mixin.py b/lib/tfw/mixins/supervisor_mixin.py index 4586e85..f9bbd6b 100644 --- a/lib/tfw/mixins/supervisor_mixin.py +++ b/lib/tfw/mixins/supervisor_mixin.py @@ -35,5 +35,8 @@ class SupervisorLogMixin(SupervisorBaseMixin): def clear_logs(self, process_name): for logfile in ('stdout_logfile', 'stderr_logfile'): - remove(self.supervisor.getProcessInfo(process_name)[logfile]) + try: + remove(self.supervisor.getProcessInfo(process_name)[logfile]) + except FileNotFoundError: + pass self.supervisor.clearProcessLogs(process_name)