Java 中你的日志规范吗?
程序员文章站
2022-05-24 15:28:37
...
Java 中的日志
java日志
:日志就是记录程序的运行轨迹,方便查找关键信息,也方便快速定位解决问题。
日志级别
日志级别 | 日志状态 |
---|---|
off | 关闭:*别,不输出日志。 |
fatal | 致命:输出非常严重的可能会导致应用程序终止的错误。 |
error | 错误:输出错误,但应用还能继续运行。 |
warn | 警告:输出可能潜在的危险状况。 |
info | 信息:输出应用运行过程的详细信息。 |
debug | 调试:输出更细致的对调试应用有用的信息。 |
trace | 跟踪:输出更细致的程序运行轨迹。 |
all | 所有:输出所有级别信息。 |
日志的规范
一般的书写日志
log.info("Happy and carefree logging");
log.debug("Found {} records matching filter: '{}'", records, filter);
不要忘了日志级别
每次你要加入一行日志的时候,你都会想,这里该用哪种日志的级别。出于对日志性能的考虑,如果代码为核心代码,执行频率非常高,则输出日志建议增加判断,尤其是低级别的输出<debug、info、warn>。
debug日志太多后可能会影响性能,有一种改进方法是:
if(log.isDebugEnabled())
log.debug("Place for your commercial");
个人认为,应该避免在代码里加入这个乱哄哄的东西。性能看起来没有什么提升(尤其是用了slf4j之后),更像是过早的优化。还有,没发现这么做有点多余么?很少有时候是明确需要这种显式的判断语句的,除非我们证明构造日志消息本身开销太大。
上一篇: log4j性能问题