无法在Python中记录到流

ffscu2ro  于 2023-01-08  发布在  Python
关注(0)|答案(1)|浏览(87)

我想登录到io.StringIO的流,但最后流是空的。下面是我的代码:

import logging, io

log_handler = logging.StreamHandler(stream)
log_format = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
log_handler.setFormatter(log_format)
log_handler.setLevel(logging.INFO)

logger.addHandler(log_handler)

logger.info("This is test info log")
print(stream.getvalue())

我哪里做错了?

    • UPDATE**如果我像这样用"Warning"替换level,它似乎会起作用
log_handler.setLevel(logging.WARNING)
logger.warning("This is test info log")

出于某种原因,它也会打印到控制台

sgtfey8w

sgtfey8w1#

配置根日志记录器:logging.basicConfig(level=logging.DEBUG).
然后,您可以将log_handler.setLevel(logging.INFO)设置为您希望的任何级别,它将捕获相应的日志流。

相关问题