在log4net中,我们可以在运行时将xml配置文件中的日志级别从DEBUG更改为ERROR,并且更改立即生效。
有没有办法在python中做到这一点?我还没想出怎么做。
另外,由于某种原因,当日志文件设置没有任何文件夹时(参见我在底部使用的配置示例 - yaml字典配置文件),它无法旋转文件。如果我将它改为其他路径,而不是代码所在的路径,它就像魅力一样,创建了20个文件。 我很乐意得到任何帮助。 谢谢!
字典配置提取示例:
rotatingFile:
class : logging.handlers.RotatingFileHandler
formatter: jajahFormater
level: DEBUG
filename: chs.log
maxBytes: 20
backupCount: 20
答案 0 :(得分:1)
你真的应该发两个问题。
.NET
基础架构监视配置文件并自动加载它以获取更改,但Python不会 - 所以您需要自己编写代码。chs.log
文件可以保持打开状态(例如在编辑器中),这样可以防止翻转 - 如果没有更多信息,我无法分辨。答案 1 :(得分:0)
来自记录器级docs使用Logger.setLevel()
和处理程序级别Handler.setLevel()
import logging
my_logger = logging.getLogger('myloggername') #Assumes you have configured the logger somewhere
my_logger.setLevel(logging.INFO)