slf4j日志的简单用法
原文https://www.cnblogs.com/qlqwjy/p/9275415.html
1.配置文件(log4j.properties)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | log4j.rootLogger=debug, C log4j.appender.A=org.apache.log4j.ConsoleAppender log4j.appender.A.layout=org.apache.log4j.PatternLayout log4j.appender.A.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n log4j.appender.B=org.apache.log4j.FileAppender log4j.appender.B.File=E:\\ log . log log4j.appender.B.layout=org.apache.log4j.SimpleLayout log4j.appender.C=org.apache.log4j.RollingFileAppender log4j.appender.C.File=E:\\ log .html log4j.appender.C.MaxFileSize=1000KB log4j.appender.C.MaxBackupIndex=10 log4j.appender.C.layout=org.apache.log4j.HTMLLayout log4j.appender.C.encoding=gbk log4j.appender.D=org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File=E:\\ log . log log4j.appender.D.layout=org.apache.log4j.TTCCLayout |
注意:
1.如果需要输出到多个位置的时候可以逗号隔开,比如: log4j.rootLogger=info, A, B
2. log4j.appender.C.encoding=gbk 的配置是为了解决中文乱码,有时候也可以设置为UTF-8试试
%p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss,SSS},SSS为毫秒数(也可以写为SS,只不过SSS如果不足三位会补0),输出类似:2011-10-18 22:10:28,021
%r: 输出自应用启动到输出该日志耗费的毫秒数
%t: 输出产生日志的线程名称
%l: 输出日志事件的位置,相当于%c.%M(%F:L)的组合,包括类全名、方法、文件名以及在代码中行数。例如:cn.xm.test.PlainTest.main(PlanTest.java:12)
%c: 输出日志信息所属的类目,通常就是所在类的全名。可写为%c{num},表示取完整类名的层数,从后向前取,比如%c{2}取 "cn.qlq.exam"类为"qlq.exam"。
%M: 输出产生日志信息的方法名%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中 %%: 输出一个"%"字符 %F: 输出日志消息产生时所在的文件名称 %L: 输出代码中的行号 %m: 输出代码中指定的消息,产生的日志具体信息 %n: 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"输出日志信息换行
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?