后端开发总结:日志打印
Posted 尚墨1111
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了后端开发总结:日志打印相关的知识,希望对你有一定的参考价值。
日志打印
日志
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,
)
以上是关于后端开发总结:日志打印的主要内容,如果未能解决你的问题,请参考以下文章