1 日志等级
TRACE/DEBUG :记录和追踪整个程序的运行过程,针对不是非常重要的信息。
INFO:记录关键的步骤
WARN:警告信息,磁盘已满等信息,预期的错误
ERROR:普通错误,程序还可以运行
FATAL:严重错误,表示程序已经无法运行了。
2 打印规范
2.1 TRACE/DEBUG 级别的日志不打印,只打印INFO及以上级别的日志
2.2 日志的容量应控制在一定范围内,需要定时的清理日志。如果日志框架有最大存储容量及最长时间的设置,可以由日志框架来决定删除日志。如果没有,我们可以自定义定时清理程序,固定来清楚一段时间以前的日志。
2.3 日志应最少保留15天
2.4 普通日志必须打印出时间,类,行数等信息,而异常错误要打印出堆栈信息
2.5 需要打印参数时,必须采用占位符的方式。防止执行了额外的方法却没有打印日志,浪费资源
2.6 预期的错误,但是不会影响程序运行的,用warn,否则用error
2.7 对于TRACE/DEBUG中的打印信息需要复杂计算的,需要用宏定义或者开关控制,否则就算不打印但是也会被执行
2.8 捕获异常后要么打印日志,要么抛出异常,不要两个都做,否则会记录2此异常
2.9 程序入口采用DEBUG级别
2.10 确保日志中的参数一定不会为null
在TRACE中记录方法的进入和方法的退出
在DEBUG中记录方法传入的参数
如果方法的返回参数比较重要,则采用Info记录
底层函数,没有逻辑方面的方法全部由TEACE和DEBUG构成,在底层函数中有判断某个方法是否执行成功,如果调用它的方法会判断这个结果的,那么本层不需要做任何记录,全部交由调用者记录。INFO主要记录和业务逻辑相关的流程。
参考:
https://www.jianshu.com/p/01eb0995cfcb