同时有多个日志后端的structlog

multistructlog的Python项目详细描述


此模块是structlog的瘦包装器,它设置并提供默认值 用于将日志发送到具有单独格式的一个或多个日志目的地 每个目的地。

api由一个函数组成:create_logger()

参数:

日志配置(dict):logging.config.dictconfig的输入

level(logging.loglevel):覆盖所有记录器的日志级别(不是处理程序!)

返回:
日志:structlog logger对象

它可以按如下方式调用:

logging_config = …

log = multistructlog.create_logger(config, level=logging.INFO)

log.info(‘Entered function’, foo=’bar’)

要创建logging_config字典,请参阅以下文档:

不需要参数来创建记录器 配置将用默认值填充,这些默认值将结构化日志打印到 慰问.

如果您不在配置中指定formatters节,则有三个 已创建,可用于处理程序:

  • json:为每条消息呈现一个json字典
  • structured:使用structlog.dev.ConsoleRenderer
  • 打印结构化日志
  • structured-color:与structured相同,但具有强制颜色输出

如果不指定handlers节,将添加一个处理程序来记录 在级别使用logging.StreamHandler和格式structured进行控制台 DEBUG

如果未指定loggers节,则为默认记录器(空字符串) 将创建,并将handlers中的所有项添加到其中,级别为 NOTSET(每级打印)。

设置日志级别时,^{tt16}中的较高者$ 使用logging_config['handlers'][*]['level']level参数 重写级别的loggers值,而不是handlers级别。

如果处理程序的级别设置为DEBUG,但记录器的级别设置为 ERROR,处理程序将被重写,并且只记录ERROR级别的消息。

multistructlog还添加一个TRACElog级别(整数级别5),该级别低于 “调试”到标准库Logger和结构日志BoundLogger

标准日志记录级别列表:
https://docs.python.org/2.7/library/logging.html#logging-levels

更改日志

1.x版本

  • 传统型

2.0.0

  • 实质性的重构/重写
  • 缓存记录器对象
  • 添加跟踪级别

2.1.0

  • 使用结构化颜色格式化程序时强制启用颜色
  • 默认情况下打印时间戳和日志级别
  • 修复有关重新初始化记录器的问题

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java读取SSLSocket的最快或最佳方式   JavaGuice向类构造函数注入对象   java类不是抽象的,并且不会覆盖OnClickListener中的抽象方法onClick(视图)   java OpenGL 1.1更改颜色更改以前的颜色?   c#将Java/Android连接到。网络服务   java在节点上生成AES密钥   java Liferay与MarkLogic XDBC数据库集成   java使用静态初始化块来提高性能   java如何在需要不同参数的另一个方法中使用同一类中的方法   音频Java多种声音   Java显式引用转换   java Intellij,如何在maven项目中导入模块   java在什么条件下调用ELResolver的setValue方法?   java在beanshell中计算代码字符串并获取beanshell解释器返回的值   javascript将音频文件上载到服务器并从服务器响应设置图像   编码风格清理java代码,多个else if语句   java是否需要使此变量可变?   java线程未更新GlassPane上的进度条   java关闭调试模式@Vaadin Spring启动应用程序