From 2f3ca5537298bf651db1ad2060f44c1e2644c510 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Tamisier?= Date: Fri, 2 Jun 2023 17:21:24 +0200 Subject: [PATCH] swf/worker: log activity spawn and completion details MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Aurélien Tamisier --- simpleflow/swf/process/worker/base.py | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/simpleflow/swf/process/worker/base.py b/simpleflow/swf/process/worker/base.py index 6f71f9924..87fc92d6f 100644 --- a/simpleflow/swf/process/worker/base.py +++ b/simpleflow/swf/process/worker/base.py @@ -1,6 +1,7 @@ from __future__ import annotations import json +import logging import os import sys import traceback @@ -8,6 +9,7 @@ from base64 import b64decode import multiprocess +import multiprocess.util import psutil import swf.actors @@ -237,10 +239,18 @@ def process(self, poller, token, task, middlewares=None): return poller.fail_with_retry(token, task, reason=reason, details=details) try: - logger.info("completing activity") + logger.info( + "completing activity id=%s worker pid=%d", + task.activity_id, + os.getpid(), + ) poller.complete_with_retry(token, result) except Exception as err: - logger.exception("complete error") + logger.exception( + "failed to complete activity id=%s worker pid=%d", + task.activity_id, + os.getpid(), + ) reason = "cannot complete task {}: {} {}".format( task.activity_id, err.__class__.__name__, @@ -331,7 +341,13 @@ def spawn(poller, token, task, middlewares=None, heartbeat=60): :param heartbeat: heartbeat delay (seconds) :type heartbeat: int """ - logger.info("spawning new activity worker pid={} heartbeat={}".format(os.getpid(), heartbeat)) + logger.info( + "spawning new activity id=%s worker pid=%d heartbeat=%s", + task.activity_id, + os.getpid(), + heartbeat, + ) + multiprocess.util.log_to_stderr(logging.INFO) worker = multiprocess.Process(target=process_task, args=(poller, token, task, middlewares)) worker.start()