用于在structlog(或类似接收器)顶部进行作用域日志记录的库

scopedlog的Python项目详细描述


linux test status

范围日志

structlog(或类似的接收器)顶部进行作用域日志记录的库,其灵感来自于一个显然已失效的lithoxyl。请注意,我(kshpytsya)并没有仔细研究实际的lithoxyl实现,以保持头脑清醒。

下面是一个示例:

importcontextlibimportstructlogimportstructlog.stdlibimportstructlog.devimportstructlog.processorsimportscopedlogimportscopedlog.sink_structlogimportscopedlog.idgen_seqstructlog.configure(processors=[structlog.stdlib.add_log_level,structlog.processors.ExceptionPrettyPrinter(),structlog.dev.ConsoleRenderer()])slog=scopedlog.ScopedLog(sink=scopedlog.sink_structlog.StructlogSink(structlog.get_logger()),id_gen=scopedlog.idgen_seq.GlobalSeqScopeIdGenenerator())withcontextlib.suppress(RuntimeError):withslog.info("scope1",k1=1)assl:sl.debug("state1",k2=2,k3=3)sl.info("state1",k4=4)sl.warn("state1",k5=5)raiseRuntimeError("bad one")withcontextlib.suppress(RuntimeError):withslog.debug("scope2",k1=1)assl:sl.debug("state1",k2=2,k3=3)sl.info("state1",k4=4)sl.warn("state1",k5=5)raiseRuntimeError("bad too ;)")withslog.debug("scope3")assl:sl.fail()withslog.debug("scope4")assl:sl.exit_kw["k1"]=1

以及预期产量:

有关更多示例,请参见tests

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

推荐PyPI第三方库


热门话题
JavaHTTP。请求侦听器   java Selenium webdriver遍历行并仅检索某些列   JavaSpring批处理在启动运行方法之前启动SimpleZoblancher运行方法   maven如何使用Maven2从javadoc生成java源代码?   java为什么我的Unicodont(Slick2D)不画画?   java取消对未使用对象的引用是否会提高冗长方法的性能?   java可执行Jar的画布比使用Eclipse Runner的小   为什么我的for循环在Android studio中与eclipse(java)产生不同的结果   java代码段字节数组到端口号   java在DynamoDB范围键中插入项   java 安卓。看法WindowManager$BadTokenException:无法添加窗口,您的活动正在运行吗?   java我想要两个列表视图同时滚动   java测试数据分离   java Saxon:每次重新部署后都需要重新启动Glassfish