使用不带Djcelery的Celery和Django配置Raven

时间:2014-08-12 03:29:19

标签: django celery sentry raven

如何使用celery配置django + raven,而不使用与celery 3.1 +过时的djcelery应用程序。

旧配置使用:

    INSTALLED_APPS = INSTALLED_APPS + (
    'raven.contrib.django.raven_compat',
)

1 个答案:

答案 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',
        },
    },
}