go zap日志组件,日志切分、日志记录

网友投稿 1243 2022-10-11

go zap日志组件,日志切分、日志记录

go zap日志组件,日志切分、日志记录

zap log 初始化:设置 ​​日志文件每 5MB 会切割并且在当前目录下最多保存 5 个备份​​,并且会将旧文档保存30天

使用 ​​lumberjack​​ 做日志切分

package mainimport ( "github.com/natefinch/lumberjack" "go.uber.org/zap" "go.uber.org/zap/zapcore" "net/logger *zap.Loggervar sugarLogger *zap.SugaredLoggerfunc InitLogger() { encoder := getEncoder() writerSyncer := getLogWriter() core := zapcore.NewCore(encoder,writerSyncer,zapcore.DebugLevel) logger = zap.New(core,zap.AddCaller()) sugarLogger = logger.Sugar()}// core 三个参数之 编码func getEncoder() zapcore.Encoder { encoderConfig := zap.NewProductionEncoderConfig() encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder encoderConfig.EncodeLevel = zapcore.CapitalLevelEncoder return zapcore.NewConsoleEncoder(encoderConfig)}// core 三大核心之 路径func getLogWriter() zapcore.WriteSyncer { lumberJackLogger := &lumberjack.Logger{ Filename: "E:/test.log", MaxSize: 10, MaxBackups: 5, MaxAge: 30, Compress: false, } return zapcore.AddSync(lumberJackLogger)}func main() { InitLogger() defer logger.Sync() simpleHttpGet("baidu.com") simpleHttpGet("simpleHttpGet(url string) { resp, err := if err != nil { logger.Error( "Error fetching url..", zap.String("url", url), zap.Error(err)) } else { logger.Info("Success..", zap.String("statusCode", resp.Status), zap.String("url", url)) resp.Body.Close() }}

没有无缘无故的荣耀

赞助我写出更好的博客

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:一个简单的微信小程序,颜值检测仪(一个简单的微信小程序,颜值检测仪怎么设置)
下一篇:WordPress Mini Program- 实现 WordPress 连接小程序应用数据(wordpress电商平台搭建)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~