[英]Can Python's logging format be modified depending on the message log level?
[英]How can I format log messages based on severity in Python's logging?
通过阅读有关日志记录的文档,我知道我可以使用basicConfig
来设置日志记录的格式,例如:
import logging
logging.basicConfig(format="%(levelname)s - %(message)s")
例如。
我的问题是,我可以为不同的级别指定不同的格式吗? 我想要实现的是将日志记录格式化为 Azure Pipelines 日志命令,以便例如 Python 代码:
logging.error("some error")
将打印为:
##[error]some error
现在我知道我可以使用%(levelname)
但我不想依赖 Azure Pipelines 日志命令与 Python 的“日志”模块之间的对应关系。 例如,在 Python 的日志记录中有info
级别,但在 Azure Pipelines 中没有。
有一个专门用于 Python 日志记录的Azure 文档,您可能会发现它很有用。 如果我理解正确(我从未使用过 Azure),您应该能够将 Python 日志发送给它而无需执行任何特殊操作。
但是,作为此 Azure 图表一部分显示的日志消息显然有些不同。 如果您希望您的消息显示为这样,一种选择是使用 Azure 喜欢的级别名称设置一些自定义级别。 您引用的文档有一个关于此的部分,尽管它警告不要在复杂的库中执行此操作。
如果您想重用标准级别,但重命名“信息”->“命令”等,您可能需要为每个此类重命名单独的格式化程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.