python-3.7 - 如何打印python记录器信息级别
问题描述
我想在命令行上运行 python3.7 脚本,并让 logger.info() 消息以与 logger.warning() 相同的方式显示在标准输出上。
这是我的代码:
import logging
logger = logging.getLogger(__name__)
print(logger.isEnabledFor(logging.INFO))
logger.setLevel(logging.INFO)
print(logger.isEnabledFor(logging.INFO))
logger.info('my info message')
logger.warn('my warning message')
预期输出:
False
True
my info message
my warning message
实际输出:
False
True
my warning message
解决方案
在上面的示例中,您需要定义一个 Stream-Handler 来告诉记录器将日志发送到哪里。如果要将它们发送到标准输出(控制台输出),只需添加
import sys
logging.basicConfig(stream=sys.stdout)
有关日志配置的更多详细信息,我建议阅读文档文档
PS你应该使用logger.warning
已logger.warn
弃用
推荐阅读
- kubernetes - kubectl 可以删除环境变量吗?
- html - 将 HTML 样式转换为简单的搜索功能
- react-native - 反应本机应用程序中的StackNavigation问题
- c# - OAuth2 WebAPI 附加标签
- c# - 我正在尝试从 MatNode C# 中的结构中检索值
- java - 用破折号分隔的三个或更多数字之间的破折号替换句子中的空格
- xpath - XPath 表达式的评估导致错误
- django - Django Rest Framework - 订购嵌套的反向查找序列化程序
- java - 嗨,我现在正在处理一个 Java 插入问题,并且在我的代码运行后出现了一种错误;不知道怎么解决
- python-3.x - BeautifulSoup,请求,数据框,从 Excel 中提取并保存到 Excel