python 模块级别日志记录

标签 python logging

我可以在 python 日志记录中使用 ContextFilters 来根据模块名称更改日志级别吗?所以像

class ContextFilter(logging.Filter):
  CMDID_cf="IAMTEST1"
  def __init__(self, CMDID1): 
  self.CMDID_cf=CMDID1

  def filter(self,record):
    record.CMDID=self.CMDID_cf
    return True

  def moduleFilter(self):
     //something like below//
     if(modulename=="something")
     setLevel(logging.ERROR)

  #MAIN
  **define logger**
  obj=ContextFilter()
  logging.addFilter(obj.modukeFilter)

在 python 文档中,我还没有真正找到任何关于此的信息,因此任何指向此问题的帮助都会很棒。

最佳答案

记录在案的适当方式 here ,是使用以 __name__ 命名的模块级记录器,然后在日志记录配置中根据需要设置其级别。无需为此使用Filter

关于python 模块级别日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20345027/

相关文章:

logging - 如何使用 Enterprise Library Logging 仅编写消息以调试输出?

java - log4j2.xml 未在 Eclipse 中加载

firefox - 从 Firefox 扩展登录到控制台?

java - 如何为 Vaadin 服务器和客户端配置一般日志记录?

python - 张量板错误 : 'Tensor' object has no attribute 'value'

python - Golang - 打包和散列二进制数据

python - 如果 __init__ 中未定义该属性,则显示该类的属性?

python - Python中的高精度时钟

java - 如何为记录器生成实例?

python - 类特定的 "constants"是否仍应在模块级别声明?