如何使用celery配置django + raven,而不使用与celery 3.1 +过时的djcelery应用程序。
旧配置使用:
INSTALLED_APPS = INSTALLED_APPS + (
'raven.contrib.django.raven_compat',
)
答案 0 :(得分:1)
Celery 3.1+不需要djcelery
,只需将raven.contrib.django.raven_compat
添加到INSTALLED_APPS
。
INSTALLED_APPS = (
...
'raven.contrib.django.raven_compat',
)
RAVEN_CONFIG = {
'dsn': 'YOUR_DSN',
}
有LOGGING
设置的示例代码:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse',
},
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
},
},
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s',
},
'simple': {
'format': '%(levelname)s %(name)s %(message)s',
},
'clear': {
'format': '%(message)s',
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'clear',
'filters': ['require_debug_true', ],
},
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'filters': ['require_debug_false', ],
},
'sentry': {
'level': 'WARNING',
'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler',
'filters': ['require_debug_false', ],
},
},
'loggers': {
'raven': {
'level': 'DEBUG',
'handlers': ['console', ],
'propagate': False,
},
'sentry.errors': {
'level': 'DEBUG',
'handlers': ['console', ],
'propagate': False,
},
'log_to_console': {
'handlers': ['console', ],
'level': 'DEBUG',
'propagate': False,
},
'log_to_sentry': {
'handlers': ['sentry', ],
'level': 'WARNING',
},
},
}