玩转高性能日志库ZAP (6)-采样
版权声明 本站原创文章 由 萌叔 发表 转载请注明 萌叔 | http://vearne.cc 前言 uber开源的高性能日志库zap, 除了性能远超logrus之外,还有很多诱人的功能,比如支持日志采样、支持通过HTTP服务动态调整日志级别。本文简单聊一下日志采样。 使用说明 Sampling:Sampling实现了日志的流控功能,或者叫采样配置,主要有两个配置参数,Initial和Thereafter,实现的效果是在1s的时间单位内,如果某个日志级别下同样内容的日志输出数量超过了Initial的数量,那么超过之后,每隔Thereafter的数量,才会再输出一次。是一个对日志输出的保护功能。 注意 这里画个重点 仅对”同样内容” 的日志做采样 默认1s的时间单位内 示例 package main import ( “go.uber.org/zap” ) func main() { config := zap.NewProductionConfig() // 默认值:Initial:100 Thereafter:100 config.Sampling = &zap.SamplingConfig{ Initial: 5, // 从第6条数据开始 Thereafter: 3, // 每3条打印一条 } // 可以置为nil 来关闭采样… 继续阅读 玩转高性能日志库ZAP (6)-采样