【发布时间】:2020-05-12 23:28:45
【问题描述】:
官方文档提供了一个带有all available attributes for logging的表格。
反过来,这些属性可以在格式化程序中使用(例如,'[{asctime}] {levelname} [{threadName}] [{name}.{funcName}:{lineno}] {message}' 就是这样一种格式化程序)。
但是,我能否在运行时获得所有可用属性的列表,而不依赖于文档?
假设我的目标是在程序上生成一个格式化程序,其中包含独立于版本的所有属性。正如文档本身所指出的那样,processName 是在 3.1 中添加的,并且在它仍然是 3.0 时并未在其中列出,这意味着如果我的脚本使用硬编码的 3.0 属性,即使它正在运行,它也不会使用 processName一个 3.1^ 的解释器。
【问题讨论】:
标签: python python-3.x logging metadata python-logging