【问题标题】:Django: Use logging inside settings.pyDjango:在 settings.py 中使用日志记录
【发布时间】:2018-07-15 18:58:19
【问题描述】:

我成功设置了 Django 日志记录,但我发现自己需要在 settings.py 中记录一些信息。这可能吗?

目前,设置只有在整个文件被解析后才会生效,我相信这是意料之中的。有没有办法在指定记录器后立即强制设置记录器?否则,有没有人们推荐的替代品?

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'console': {
            'format': '%(levelname)s: %(message)s'
        },
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'console'
        }
    },
    'loggers': {
        'main': {
            'handlers': ['console'],
            'level': 'INFO',
            'propagate': False,
        },
    },
}

# The below does not work because the setup declared above is not yet in effect

logger = logging.getLogger('main')
logger.info("Works?")

【问题讨论】:

    标签: python django logging


    【解决方案1】:

    回答我自己的问题,但会接受可能更完整的其他答案

    添加以下内容,将根据需要加载 LOGGING。不知道有什么副作用。

    import logging.config
    logging.config.dictConfig(LOGGING)
    

    【讨论】:

      猜你喜欢
      • 2012-05-03
      • 2013-11-29
      • 2011-09-16
      • 1970-01-01
      • 2011-04-06
      • 2010-09-25
      • 2011-10-21
      • 2018-06-05
      • 2013-09-11
      相关资源
      最近更新 更多