我正在尝试使用日志记录模块打印到文件。它工作正常,我的文件有我的日志,但它也将这些日志显示到我的控制台窗口,这是我不想发生的。我尝试了以下方法:
logger = logging.getLogger('log')
hdlr = logging.handlers.RotatingFileHandler(LOG_FILENAME, maxBytes=200000, backupCount=3)
formatter = logging.Formatter('%(asctime)s -- %(levelname)s -- \n%(message)s')
hdlr.setFormatter(formatter)
logger.addHandler(hdlr)
logger.setLevel(logging.INFO)
logger.propagate = False
Run Code Online (Sandbox Code Playgroud)
即使很艰难,它仍然会打印到控制台。任何想法为什么?
很可能您调用了logging.basicConfig()某个地方,或者调用了logging.info()或类似的调用(调用模块级函数,而不是记录器方法)。
模块级函数用于简单使用,如果没有处理程序分配给根记录器,则创建和添加控制台处理程序。因此,请确保您没有logging.debug(...)样式调用,并且您没有调用basicConfig()或其他可能会更改日志配置的日志配置功能。
| 归档时间: |
|
| 查看次数: |
4864 次 |
| 最近记录: |