首页 > 代码库 > Log日志规范

Log日志规范

应用程序的开发离不开日志日志对于分析故障、性能、执行效果等都非常有帮助,这篇文章的目的就是整理一些Java日志的编码规范,希望对大家有帮助。

以下是一些最基本的Logger编码规范

1.在一个对象中通常只使用一个Logger对象,Logger应该是static final的,只有在少数需要在构造函数中传递logger的情况下才使用private final。

log

 

2.输出Exceptions的全部Throwable信息,因为logger.error(msg)和logger.error(msg,e.getMessage())这样的日志输出方法会丢失掉最重要的StackTrace信息。

log

3.不允许记录日志后又抛出异常,因为这样会多次记录日志,只允许记录一次日志。

log

4.不允许出现System print(包括System.out.println和System.error.println)语句。

log

5.不允许出现printStackTrace。

log

6.日志性能的考虑,如果代码为核心代码,执行频率非常高,则输出日志建议增加判断,尤其是低级别的输出<debug、info、warn>。

log

7.在公共的日志里规避打印程序的调试或者提示信息。

 

FAQ:参考

1.7 Good Rules to Log Exceptions

2.5 common log mistakes