Log4j

Log4j

Apache软件基金会的一个开源项目,方便控制程序日志的输出格式,保存日志内容


三种组件:
  • logger 日志记录器
  • Appender 输出源
  • layout 布局

记录器记录级别(高—>低)

OFF、 FATAL、 ERROR、 WARN、 INFO 、DEBUG、 ALL

配置案例:
在 src 下配置 log4j.properties,记载器会自动寻找配置文件

# 配置记录器
log4j.rootLogger = DEBUG,myAppender

# 配置自定义记录器
log4j.logger.范围 = DEBUG,myAppender,file-Appender

# 配置自定义的附着器:myAppener
# 自定义附着器常用的三种方式:
	# org.apche.log4j.ConsoleAppender
	# org.apche.log4j.FileAppender
	# org.apche.log4j.DailyRollingFileAppender
log4j.appender.myAppender = org.apche.log4j.ConsoleAppender

#自定义附着器2(自定义输出格式)
log4j.appender.myAppender2=org.apache.log4j.ConsoleAppender

#定义附着器3(定义日志文件)
log4j.appender.file-Appender3=org.apache.log4j.FileAppender
#定义日志文件路径
log4j.appender.file-Appender3.file=d:/prjMgr_log/prjMgr.log
log4j.appender.file-Appender3.layout=org.apache.log4j.PatternLayout
log4j.appender.file-Appender3.layout.conversionPattern=[%-5p] [%t] [%d] [%c] - %m%n

#定义附着器4(每天产生一个日志文件)
log4j.appender.file-day-Appender4=org.apache.log4j.DailyRollingFileAppender
#定义日志文件路径和每天一个日志文件的文件名前缀
log4j.appender.file-day-Appender4.file=d:/prjMgr_log/log_
#定义每天产生的日志文件名以及后缀名
log4j.appender.file-day-Appender4.datePattern=yyyy_MM_dd'.log'
#允许日志内容进行追加
log4j.appender.file-day-Appender4.append = true
#配置输出格式
log4j.appender.file-day-Appender4.layout=org.apache.log4j.PatternLayout
log4j.appender.file-day-Appender4.layout.conversionPattern=[%-5p] [%t] [%d] [%c] - %m%n

# 配置日志的输出格式(布局)
		# 日志输出格式两种取值方式:
			# org.apache.log4j.SimpleLayout(固定模式,只输出日志等级和日志内容)
			# org.apache.log4j.PatternLayout(可指定日志内容输出模式)
log4j.appender.myAppender.layout = org.apache.log4j.SimpleLayout

#配置自定义格式的格式内容分布
#      %d  日期和时间
#      %m 代码中给定的消息内容
#      %p  日志的等级,即DEBUG,INFO,WARN,ERROR,FATAL等
#      %c  所在类的全名
#      %t   产生该日志的线程名
#      %n  回车换行符
log4j.appender.myAppender2.layout.conversionPattern=[%-5p] [%t] [%d] [%c] - %m%n



使用:
// 定义日志对象
private static final logger LOG = logger.getLogger(类.class)
// 测试需要打印的日志
日志打印规范:
  1. 进入控制器,参数打印
  2. Service 的入参打印
  3. Service Mapper准备的参数打印
  4. Service 操作玩数据库的结果打印,如果结果是 List 或者 Set等集合元素,需要打印个数
  5. 控制器(Servlet中)要返回给前端页面的结果,进行打印(如果是结合元素,打印个数)
    操作玩数据库的结果打印,如果结果是 List 或者 Set等集合元素,需要打印个数
  6. 控制器(Servlet中)要返回给前端页面的结果,进行打印(如果是结合元素,打印个数)
  7. 异常 catch 中打印错误对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李鑫海。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值