我正在从基于fileConfig
的记录器转移到基于dictConfig
的记录器。我正在为WARNING
的请求设置日志级别:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'simpleFormatter': {
'format': '%(asctime)s - %(name)-30s - %(levelname)s - %(message)s',
'datefmt' : '%Y-%m-%dT%H:%M:%S%z',
}
},
'handlers': {
'consoleHandler': {
'class': 'logging.StreamHandler',
'level': 'NOTSET',
'formatter': 'simpleFormatter',
'stream': 'ext://sys.stderr',
},
},
...
'requests.packages.urllib3.connectionpool': {
'handlers': ['consoleHandler'],
'level': 'WARNING',
'propagate': False,
},
import logging
logging.config.dictConfig(LOGGING)
同样的事情是使用fileConfig
:
[logger_requests]
level=WARNING
handlers=consoleHandler
qualname=requests.packages.urllib3.connectionpool
propagate=0
如何使用loglevel
?
dictConfig
答案 0 :(得分:0)
所以,初学者的错误。记录器配置必须位于'loggers'
的{{1}}密钥内,如the schema documentation中所述。我把它放在顶层。
来自dictConfig
的错误消息会有所帮助,但它会默默地忽略任何不受支持的密钥。