我的日志记录有以下代码:
logging.basicConfig( handlers=[ logging.FileHandler("log.txt", "w"), logging.StreamHandler() ], format='%(levelname)s - %(asctime)s - %(message)s', datefmt='%H:%M:%S', level=logging.DEBUG)
我想为我的两个处理程序设置一个不同的级别。 但我真的想保持简单,我想用基本配置。
我试过但失败了:
logging.basicConfig( handlers=[ logging.FileHandler("log.txt", "w", level=logging.DEBUG), logging.StreamHandler(level=logging.DEBUG) ], format='%(levelname)s - %(asctime)s - %(message)s', datefmt='%H:%M:%S')
类型错误: 初始化 ()获得意外的关键字参数“level”
我猜你不会真的用 DEBUG 实际上,对于处理程序级别,因为它们将传递所有消息(>= )不管你是否将等级设置为 调试 level1 level2
DEBUG
调试
level1
level2
h1 = logging.FileHandler(...); h1.setLevel(level1) h2 = logging.StreamHandler(...); h2.setLevel(level2)
然后通过 handlers=[h1, h2] basicConfig .
handlers=[h1, h2]
basicConfig