gpt4 book ai didi

python 重写 getLogger()

转载 作者:太空宇宙 更新时间:2023-11-03 14:09:26 24 4
gpt4 key购买 nike

在我的<my_module_name>模块我有这个:

import logging
import my_module_name.log
log = logging.getLogger(__name__)

这工作正常,但我希望能够覆盖/log.py 中的logging.getLogger(),以便我可以使用:

import my_module_name.log
log = my_module_name.log.getLogger(__name__)

最佳答案

如果您想要一个配置文件,您有几个选择。有基于ini文件的配置、基于dict配置的配置和基于代码的配置。我将在这里解释基于字典的配置。

在某个文件中定义日志记录配置。

logging_config = dict(
version = 1,
formatters = {
'f': {'format':
'%(asctime)s %(name)-12s %(levelname)-8s %(message)s'}
},
handlers = {
'h': {'class': 'logging.StreamHandler',
'formatter': 'f',
'level': logging.DEBUG}
},
root = {
'handlers': ['h'],
'level': logging.DEBUG,
},
)

然后,当您想在代码中记录某些内容时,只需实例化一个记录器对象即可。

import logging
from logging.config import dictConfig
import logging_config # defined above so import accordingly
dictConfig(logging_config)

logger = logging.getLogger() # you have a logger ready. Use it to log something
logger.debug("Its a log")

关于python 重写 getLogger(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48624719/

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