【发布时间】:2014-01-08 22:20:38
【问题描述】:
我的tasks.py中有以下内容
from celery.utils.log import get_task_logger
logger = get_task_logger("celery.task")
我在settings.py 中设置了celery.task 的日志记录,并且我的tasks.py 文件中的所有日志都已正确记录到文件中。
我有 Django 模块。这些模块可以直接从 Django 或通过 Celery 任务调用。我想要的是,如果模块被 Django 调用,那么日志应该转到 Django 日志文件。如果模块被任务调用,日志应该去 celery 任务记录器。
例子:
# tasks.py
from app.foo import MyFoo
@task(name="bar")
def boo():
MyFoo.someFoo()
# app.foo.py
log = logging.getLogger(__name__)
我希望 MyFoo 中的日志消息在由工作任务运行时转到 celery 日志。
有什么想法吗?
【问题讨论】:
标签: python django logging celery