如何在Django中使用默认值进行DRY日志记录配置?

时间:2014-06-17 02:20:38

标签: python django logging

Django's documentation表示您可以设置override_default_handlers=False让您的LOGGING配置与django的DEFAULT_LOGGING合并。我希望能够在django的DEFAULT_LOGGING中引用处理程序,而无需在我自己的日志配置中重新定义它们。我当前的LOGGING设置如下所示:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'site_logfile': {
            'level': 'INFO',
            'class': 'logging.FileHandler',
        },
        'sentry': {
            'level': 'ERROR',
            'class': ('raven.contrib.django.raven_compat.handlers'
                      '.SentryHandler'),
        }
    },
    'loggers': {
        '': {
            'level': 'DEBUG',
            'handlers': ['console'],
        }
    }
}

我在我的production.py中覆盖了将'sentry'和'site_logfile'处理程序添加到默认记录器,并在'site_logfile'处理程序中设置文件名。

但是,当我启动我的开发服务器时,我收到以下错误:

ValueError: Unable to configure handler 'console': Unable to add filter 
'require_debug_true': 'require_debug_true'

我正在使用Django stable / 1.7.x和python 2.7。

0 个答案:

没有答案