Я бегу django 1.3 с django-celery 2.4.2 на производстве.Django logging ломает демона сельдерея
Поскольку я активировал регистрацию django в файле настроек django settings.py, демона сельдерея (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
}
}
}
Edit: Я добавил следующий код перед словарем LOGGING, который fixxes вопрос. Если у кого-то есть более чистое решение, я бы хотел услышать.
import sys
if not "celeryd" in sys.argv:
LOGGING = ...
определить "сельдерей демон (celeryd) обыкновение работать больше". Что происходит, когда вы пытаетесь запустить его? – jpic