Python日志记录:使用字典

时间:2016-12-09 17:13:13

标签: python logging

使用Python的logging模块,我想配置两个独立的记录器。一个用于开发,一个用于操作。 我可以使用addHandler之类的配置方法来实现这一点(请参阅问题底部的代码),但我没有看到使用配置字典的方法。相反,dictConfig似乎保留给整个日志记录模块。如何使用字典配置命名的logger

这是我用来配置两个记录器的代码,opsdev使用方法调用,没什么特别的,只是为了让我们了解一下我想要的功能:

import logging

# create logger
ops_logger = logging.getLogger('ops')
dev_logger = logging.getLogger('dev')
ops_logger.setLevel(logging.DEBUG)
dev_logger.setLevel(logging.DEBUG)

# create console handler and set level to debug
ops_file = logging.FileHandler("ops")
dev_file = logging.FileHandler("dev")
ops_file.setLevel(logging.DEBUG)
dev_file.setLevel(logging.DEBUG)

# create formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# add formatter to ch
ops_file.setFormatter(formatter)
dev_file.setFormatter(formatter)
# add ch to logger
ops_logger.addHandler(ops_file)
dev_logger.addHandler(dev_file)
# 'application' code


ops_logger.error('ops error message')
dev_logger.error('dev error message')

我使用2.7,但接受3.x解决方案

0 个答案:

没有答案