Python dictconfig没有记录INFO级别的消息

时间:2013-11-17 06:41:29

标签: python logging

我的python代码如下所示:

import logging
import logging.config

LOG_SETTINGS = {
    'version': 1,

    'formatters': {
        'simple': {
            'format': '%(levelname)s: %(message)s'
        },
    },

    'handlers': {
        'file_handler': {
            'class': 'logging.FileHandler',
            'filename': 'example-dict-config-log.log',
            'level': 'INFO',
            'formatter': 'simple',
     },
    'console': {
        'class': 'logging.StreamHandler',
        'formatter': 'simple',
        'level': 'ERROR'
        }
    },

    'loggers': {
        __name__: {
            'handlers': ('file_handler', 'console',)
        }
    }
}


logging.config.dictConfig(LOG_SETTINGS)

logger = logging.getLogger(__name__)


logger.error('error messages should go to stderr and file')
logger.info("info messages should go to file")

dict配置文件对我来说没问题,但代码似乎没有记录INFO级别的消息。我做错了什么?

1 个答案:

答案 0 :(得分:0)

我意识到我的记录器的默认级别为WARNING,因此无法记录INFO条消息(级别号低于WARNING)。所以在__name__记录器中,我添加了'level': 'INFO',并且确实如此。