log4j的正确使用姿势

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 最近清明节,朋友公司的日志爆了,说控制台打得太满了,出了问题,早上4点多被喊去公司修改代码,他们把所有的日志全部在控制台打印了,结果就。。。我说日志这么做不可取啊,你们打印出来的内容太多啦,控制台没必要打印这么多,log4j配置一下每天生成即可,这样也方便查看查错 其实我们也是简单应用一下而已,大致配置如下log4j.

最近清明节,朋友公司的日志爆了,说控制台打得太满了,出了问题,早上4点多被喊去公司修改代码,他们把所有的日志全部在控制台打印了,结果就。。。我说日志这么做不可取啊,你们打印出来的内容太多啦,控制台没必要打印这么多,log4j配置一下每天生成即可,这样也方便查看查错

 

其实我们也是简单应用一下而已,大致配置如下

log4j.rootLogger=INFO,console
# TODO 发布到阿里云记得添加,另外控制台不输出
#,dailyFile

log4j.logger.org.mybatis = DEBUG

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c]-[%p] %m%n

# 定期滚动日志文件,每天都会生成日志
log4j.appender.dailyFile=org.apache.log4j.DailyRollingFileAppender
# TODO 本地日志地址,正式环境请务必切换为阿里云地址
log4j.appender.dailyFile.File=C:/logs/log.log4j
#log4j.appender.dailyFile.File=/usr/local/logs/log.log4j
log4j.appender.dailyFile.DatePattern='.'yyyy-MM-dd
log4j.appender.dailyFile.layout=org.apache.log4j.PatternLayout
log4j.appender.dailyFile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n

# 订单服务 单独日志记录
...

# 支付服务 单独日志 配置
...

 

需要注意的是日志地址在不同的环境下需要切换,在linux上的地址是不同的

而针对细化到类或者包下的日志我们只对订单以及支付做了单独的配置,生成的地址也不同,这样更方便进行排错

另外日志的保存方式有这几种,可以根据所需要的去进行配置

org.apache.log4j.ConsoleAppender(日志在控制台输出)

org.apache.log4j.FileAppender(文件中输出)

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件,推荐~)

org.apache.log4j.RollingFileAppender(日志文件输出达到指定大小就会另外产生一个新的文件)

org.apache.log4j.WriterAppender(流形式输出到指定路径)

​另外对于支付流水可以使用日志输出到数据库,而我们不需要手动进行保存。若在大并发的时候可以选择nosql数据库,比如mongodb,这样的做法也是不错的;而对于某些报表类功能也可以使用日志的做法,这样统计也十分方便。这些日后抽空再说一下吧~

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
7月前
|
Java 数据库
Log4j介绍
Log4j介绍
70 0
|
3月前
|
XML Java 数据库连接
|
6月前
|
XML 移动开发 Java
|
XML 运维 Java
Log4j2使用总结
Log4j2使用总结
120 0
|
XML Java 测试技术
Log4j
Log4j 是一个开源的 Java 日志框架,提供了灵活的日志记录功能和多种输出方式,可以帮助开发人员更好地掌握应用程序的运行状态和性能。Log4j 支持多种日志级别、多种输出格式、多种输出目标等特性,可以满足不同应用场景的需求。
184 0
|
XML JSON 网络协议
Log4j2-Log4j 2介绍及使用
Log4j2-Log4j 2介绍及使用
214 0
|
安全 Java Apache
玩大了,Log4j 2.x 再爆雷。。。
最近沸沸扬扬的 Log4j2 漏洞门事件炒得热火朝天,历经多次版本升级。。。
玩大了,Log4j 2.x 再爆雷。。。
|
Android开发
Log
Log框架 Logger (简单,漂亮,强大的Android日志工具) Hugo (在调试版本上注解的触发方法进行日志记录) Timber (一个小的,可扩展的日志工具)
1239 3
Log.D的使用
第一个参数为D/后面的名称,一般是变量或者方法名。
1300 0