Формат ISO 8601 в журналах сельдерея - PullRequest
0 голосов
/ 13 июля 2020

Я пытаюсь настроить форматирование даты в результатах журнала моего приложения для сельдерея, когда нужно писать в файл. Мне не удалось найти способ решить эту проблему.

from celery import Celery
from celery import signals

app = Celery("myApp")

@signals.celeryd_init.connect
def setup_log_format(sender, conf, **kwargs):
    conf.worker_log_format = """
        [%(asctime)s] %(levelno)s [%(levelname)s] %(name)s: %(message)s
    """.strip().format(sender)
    conf.worker_task_log_format = (
        "[%(asctime)s] %(levelno)s [%(levelname)s] %(name)s: %(message)s"
    ).format(sender)

TaskA.py

from celery.utils.log import get_task_logger
logger = get_task_logger(__name__)

if x:
   logger.info(f"this is {x}")

В файле журнала я вижу:

[2020-07-13 14:59:30,182] 10 [INFO] This is True

Что я хочу иметь:

[2020-07-13T14:59:30.182606Z] 10 [INFO] This is True

Очевидно, эта функция еще не реализована на стороне сельдерея . Подскажите пожалуйста, видите ли вы способ решить эту проблему?

Заранее спасибо за вашу помощь.

Пс. Я использую сельдерей с Django fwk.

...