后端开发总结(4):日志打印
日志打印
- 日志
- 1 日志类型
- 2 日志分类
- 3 错误信息书写
- 4 定制个人日志格式
日志
1 日志类型
panic > error > warn >info >debug
2 日志分类
日志重要性:多打印日志,方便排查错误
-
debug,用于调试打印信息,开启info级别之后不显示
- 输入了什么参数,输出了什么参数,计算结果,这些参数类,需要知道值,可以打印debug
- 执行路径,类似于 if else 它走了什么路径,方便知道代码执行路径,定位问题
- 重要节点,重要逻辑,执行情况,打印
-
info,也是用于打印调试信息,与debug类似,区别在于测试环境中是否会显示出来
-
warn,执行出了一些意外,但是不会影响核心业务逻辑的执行
- 值允许,但异常。取参数没取到,参数值为空
- 修改影响行数为0
- 相关的非核心业务调用没有正常执行
-
error,服务出错了,但是还能跑,一般会对日志中的error信息进行计数,当一分钟打印超过多少时,需要人为介入处理
- 对于return 类型的错误,按照是否为核心逻辑确定打印error还是info
- 捕捉的各种错误,可以考虑
- 数据库操作的各种异常
-
panic,基本报一次,服务直接挂了
- 数据库连接错误
- 各种初始化错误
3 错误信息书写
log.Bizlogger.Error("Error during query : param empty")
log.Bizlogger.Infof("sql:%s,args:%v", toSql, args)
log.Bizlogger.Errorf("Error during count,err:%v", err)
log.Bizlogger.Errorf("Error during json unmarshal,err:%v", err)
4 定制个人日志格式
// 日志格式
logger.WithFields(logrous.Fields{"statusCode": statusCode,"cost": cost,"clientIp": clientIP,"method": reqMethod,"uri": reqURI,"ua": ua,
})
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
