Tomcat下项目调整Log4J的console输出级别,减少输出信息
生活随笔
收集整理的这篇文章主要介绍了
Tomcat下项目调整Log4J的console输出级别,减少输出信息
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
场景
输出优先级,由低到高
DEBUG,INFO,WARN,ERROR,FATAL
输出方式说明
org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
实现
所以这里为了使项目启动时少输出信息。我们找到Tomcat下的webapps下的项目下的WEB-INF下的
class下的log4j.xml或者log4j.properties,这里以log4j.xml为例。
<!-- 输出到控制台中 --><appender name="console" class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss\} %-5p] (%c:%L) - %m%n" /></layout><!-- 限制日志输出级别 --><filter class="org.apache.log4j.varia.LevelRangeFilter"><param name="LevelMax" value="ERROR" /><param name="LevelMin" value="WARN" /></filter></appender>将LevelMin调高点。
log4j.xml示例代码:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"><!-- ========================== 自定义输出格式说明================================ --><!-- %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL --><!-- #%r 输出自应用启动到输出该log信息耗费的毫秒数 --><!-- #%c 输出所属的类目,通常就是所在类的全名 --><!-- #%t 输出产生该日志事件的线程名 --><!-- #%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n” --><!-- #%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM ddHH:mm:ss,SSS},输出类似:2002年10月18日22:10:28,921 --><!-- #%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10) --><!-- ========================================================================== --><!-- ========================== 输出方式说明================================ --><!-- Log4j提供的appender有以下几种: --><!-- org.apache.log4j.ConsoleAppender(控制台), --><!-- org.apache.log4j.FileAppender(文件), --><!-- org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), --><!-- org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), --><!-- org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) --><!-- ========================================================================== --><!-- 输出到日志文件 每天一个日志 --><appender name="filelog_daily" class="org.apache.log4j.DailyRollingFileAppender"><param name="File" value="${pass}logs/***_logs_daily.log" /><param name="DatePattern" value="'daily.'yyyy-MM-dd'.log'" /><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern"value="[%d{yyyy-MM-dd HH:mm:ss\} %-5p] [%t] (%c:%L) - %m%n" /></layout></appender><!-- 输出到控制台中 --><appender name="console" class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss\} %-5p] (%c:%L) - %m%n"/></layout><!-- 限制日志输出级别 --><filter class="org.apache.log4j.varia.LevelRangeFilter"><param name="LevelMax" value="ERROR" /><param name="LevelMin" value="WARN" /></filter></appender><!-- 发邮件(只有ERROR时才会发送) --><appender name="mail" class="org.apache.log4j.net.SMTPAppender"><param name="threshold" value="ERROR" /><!-- 缓存文件大小,日志达到512k时发送Email --><param name="BufferSize" value="512" /><param name="From" value="***@126.com" /><param name="SMTPHost" value="smtp.126.com" /><param name="Subject" value="***" /><param name="To" value="***@***.com" /><param name="SMTPUsername" value="***" /><param name="SMTPPassword" value="***" /><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss.SSS} [%p]-[%c] %m%n" /></layout></appender><!-- 通过<category></category>的定义可以将各个包中的类日志输出到不同的日志文件中--><logger name="org.quartz" additivity="true"><level value="INFO"/></logger><root><level value="DEBUG" /><!-- <appender-ref ref="filelog_appender" /> --><!-- <appender-ref ref="filelog_daily" /> --><appender-ref ref="console" /></root></log4j:configuration>
总结
以上是生活随笔为你收集整理的Tomcat下项目调整Log4J的console输出级别,减少输出信息的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Eclipse新建SpringBoot项
- 下一篇: BigDeciml转String为0.0