具有映射诊断上下文的结构化日志库

mdclogp的Python项目详细描述


mdclogpy

具有映射诊断上下文的结构化日志库

  • 将日志项以结构化格式输出到标准输出,当前为json。
  • 基于严重性的筛选。
  • 支持映射诊断上下文(MDC)。 set mdc对由库自动添加到日志条目中。

日志条目格式

使用mdclog_write()函数编写的每个日志条目都包含

  • 时间戳
  • 记录器标识
  • 日志条目严重性
  • 所有现有的MDC对
  • 日志消息文本

目前,库只支持写入标准的json格式的输出 不在这个过程中。

示例日志输出

{"ts": 1559285893047, "crit": "INFO", "id": "myprog", "mdc": {"second key":"other value","mykey":"keyval"}, "msg": "Hello world!"}

安装

从pypi安装

python3 -m pip install mdclogpy

使用源安装

python3 setup.py install

用法

该库可以通过以下两种方式使用。

  1. 使用根记录器
importmdclogpymdclogpy.error("This is an error log")
  1. 创建记录器实例
frommdclogpyimportLoggermy_logger=Logger()my_logger.error("This is an error log")

程序可以创建多个记录器实例。

映射诊断上下文

MDC是记录器实例特定的键值对,包括 通过记录器实例写入的所有日志项。

默认情况下,库实现一个根记录器实例。 添加到根日志记录器实例的mdc仅添加到日志条目 通过根记录器实例编写。

许可证

版权所有(c)2019 AT&T知识产权。 版权所有(c)2018-2019诺基亚。

根据apache许可证2.0版(以下简称“许可证”)授权; 除非符合许可证,否则您不能使用此文件。 您可以在

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则软件 根据许可证分发是按“原样”分发的, 无任何明示或默示的保证或条件。 有关管理权限的特定语言和 许可下的限制。

单元测试

要运行单元测试,请在包目录中运行以下命令: python3 -m unittest discover

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

推荐PyPI第三方库


热门话题
java RunUnuithRead未更新TextView   java如何从第一个匹配的枚举类型获取枚举常量   java jaxws客户端不重用类   java如何在程序内部将布局和文本大小设置为DP?   Java中Tictaoe人工智能的最简单MiniMax算法   安卓中使用PowerMock的java单元测试单例类方法   用于测试的java虚拟手机号码和电子邮件实用程序   SearchTree实现中的java Compiletime错误   java Jenkins artifactoryPublish失败,HTTP响应代码:405。HTTP响应消息:不允许使用方法   java JButton不显示在JFrame中   Java LWJGL新的渲染问题windows   Java中优先级队列实现中获取运行时异常的数据结构   java错误:org。冬眠hql。内部的阿斯特。ErrorCounter第1:45行:意外标记:从表中获取最后一条记录时的描述   java在不同线程中发出截击请求   当具有本机方法的类不在默认包中时,出现UnsatifiedLinkError java异常   java Spring mvc。无法呈现参数   java EasyMock 2.5不适用于多个参数捕获