gpt4 book ai didi

python - logging.config.dictConfig 似乎不起作用

转载 作者:行者123 更新时间:2023-12-04 16:30:40 26 4
gpt4 key购买 nike

这段代码有什么问题?它将 Whatsup 输出到 stdOut,而没有输出到/tmp 中的文件。它创建了文件,但没有写入任何内容,即使在记录数据负载 ('w'*20000) 时也不写入。我检查后似乎也没有指定任何处理程序。

>>> logger.handlers
[]
>>> logger.warning("Whatsup")
Whatsup
>>>

import logging
import logging.config
import multiprocessing

import threadfilter

VERBOSE_LOGGING = 1
directory = '/tmp/'



configDict = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'detailed': {
'class': 'logging.Formatter',
'format': '%(asctime)s - %(levelname)s =%(threadName)s= - Completer: %(message)s'
}
},
'handlers': {
'fileH': {
'class': 'logging.FileHandler',
'filename': '%s/ZZZZZZZZZZ_dispatcher_jobComplete3r.log' % (directory),
'formatter': 'detailed'
}
},
'loggers': {
'root': {
'handlers': ['fileH'],
'level': VERBOSE_LOGGING
}
}
}

logging.config.dictConfig(configDict)
logger = logging.getLogger()
logger.handlers
logger.warning("Whatsup")

也没有抛出错误,它似乎只是默默地忽略我的配置。

python 3.6.1

最佳答案

这出现在寻找同样的问题。和你一样,我解决了它,但做得不同。我认为值得一提,因为谷歌会为其他人提供...

默认的“root”处理程序不称为“root”,它实际上是空白或无。

用 None (这是一个有效的字典键)替换 'root' 使其适用于所有记录器,而不仅仅是“root”记录器。

关于python - logging.config.dictConfig 似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45167874/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com