Django日志记录会破坏芹菜守护进程

Django日志记录会破坏芹菜守护进程,django,celery,django-celery,Django,Celery,Django Celery,我正在生产中运行django 1.3和django芹菜2.4.2 由于我在django settings.py文件中激活了django日志,芹菜守护进程(celeryd)将不再运行。 删除日志功能可以解决此问题 我在settings.py中的日志代码如下所示: LOGGING = { 'version': 1, 'disable_existing_loggers': True, 'formatters': { 'standard': {

我正在生产中运行django 1.3和django芹菜2.4.2

由于我在django settings.py文件中激活了django日志,芹菜守护进程(celeryd)将不再运行。 删除日志功能可以解决此问题

我在settings.py中的日志代码如下所示:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'standard': {
            'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
        },
    },
    'handlers': {
        'write_to_log': {
            'level':'WARNING',
            'class':'logging.handlers.RotatingFileHandler',
            'filename': '/path/to/project/logs/errors.log',
            'maxBytes': 1024*1024*5, # 5 MB
            'backupCount': 5,
            'formatter':'standard',
        },
    },
    'loggers': {
        'django': {
            'handlers': ['write_to_log'],
            'level': 'WARNING',
            'propagate': True
        }
    }
}
编辑: 我在日志字典之前添加了以下代码,解决了这个问题。如果有人有更干净的解决方案,我想听听

import sys
if not "celeryd" in sys.argv:
    LOGGING = ...

celeryd劫持并配置根记录器,因此可能存在冲突

尝试通过以下方式禁用芹菜日志劫持:

CELERYD_HIJACK_ROOT_LOGGER=False
定义“芹菜守护进程(celeryd)不再运行”。当您尝试运行它时会发生什么?