当前位置:网站首页>log4j2配置
log4j2配置
2022-04-22 08:44:00 【向天再借500年V】
log4j2配置
日志输出格式:
%-5level 级别
%d{yyy-MM-dd HH:mm:ss.SSS} 日期
%c 当前类全名
%M 当前执行方法
%L 行号
%t 线程名
%m 信息
%n 换行
log4j2.xml范例1
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<properties>
<property name="logDir">D:/0000/logs</property>
</properties>
<Appenders>
<!-- 控制台 -->
<Console name="consoleAppender" target="SYSTEM_ERR">
<!--pattern:日期,线程名,日志级别,日志名称,日志信息,换行 -->
<PatternLayout
pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%t] %c.%M[%L] - %m%n" />
</Console>
<!-- 文件 -->
<File name="fileAppender" fileName="${logDir}//log4j2.log">
<PatternLayout
pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%t] %c.%M[%L] - %m%n" />
</File>
<!-- 按照格式拆分日志 -->
<RollingFile name="rollingFile"
fileName="${logDir}/rollog.log"
filePattern="${logDir}/rollog_-%d{yyyyMMdd}-%i">
<PatternLayout
pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%t] %c.%M[%L] - %m%n" />
<Policies>
<!-- 启动时,处罚拆分规则,产生一个日志文件 -->
<OnStartupTriggeringPolicy />
<!-- 按照大小拆分 -->
<SizeBasedTriggeringPolicy size="10kb" />
<!-- 按照时间节点拆分,拆分规则filePattern -->
<TimeBasedTriggeringPolicy />
</Policies>
<!-- 同一目录下,文件最大数量,超过则覆盖 -->
<DefaultRooloverStrategy max="3" />
</RollingFile>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="consoleAppender" />
<!-- <AppenderRef ref="fileAppender" /> -->
<AppenderRef ref="rollingFile" />
</Root>
</Loggers>
</Configuration>
log4j2.xml范例2
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="warn">
<Properties>
<!-- 配置日志文件输出目录,此配置将日志输出到tomcat根目录下的指定文件夹-->
<Property name="LOG_HOME">logs</Property>
<!-- 日志输出格式 -->
<Property name="LOG_PATTERNLAYOUT">[SysLog] [%p] [%d{yyyy-MM-dd HH:mm:ss}] [%l] : %m%n</Property>
</Properties>
<Appenders>
<!-- 控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch),当前只输出TRACE,DEBUG,INFO 三种 -->
<!-- 输出日志的格式 -->
<Console name="console_out_appender" target="SYSTEM_OUT">
<ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="${LOG_PATTERNLAYOUT}"/>
</Console>
<!-- INFO级别日志 -->
<RollingRandomAccessFile name="info_appender" immediateFlush="true" fileName="${LOG_HOME}/sys.log"
filePattern="${LOG_HOME}/sys.log.%d{yyyy-MM-dd}">
<PatternLayout pattern="${LOG_PATTERNLAYOUT}"/>
<Policies>
<!-- <SizeBasedTriggeringPolicy size="2MB"/>-->
<!-- 如果启用此配置,则日志会按文件名生成新压缩文件, 即如果filePattern配置的日期格式为 %d{yyyy-MM-dd HH}
,则每小时生成一个压缩文件, 如果filePattern配置的日期格式为 %d{yyyy-MM-dd} ,则天生成一个压缩文件 -->
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
<DefaultRolloverStrategy>
<Delete basePath="${LOG_HOME}" maxDepth="1">
<IfFileName glob="*.log.*"/>
<IfLastModified age="3d"/>
<!--!Note: 这里的age必须和filePattern协调,
后者是精确到HH, 这里就要写成xH, xd就不起作用,精确到mm 下面就要成分单位 4320是3天的 ,
时间需要保证文件不被占用否则可能造成删除的时候, 最近的文件还处于被占用状态,导致删除不成功!-->
</Delete>
</DefaultRolloverStrategy>
</RollingRandomAccessFile>
</Appenders>
<Loggers>
<!-- 配置日志的根节点 -->
<root level="INFO">
<appender-ref ref="console_out_appender"/>
<appender-ref ref="info_appender"/>
</root>
<!-- 第三方日志系统,为指定包下的class指定不同的日志级别 -->
<!-- <logger name="org.springframework.core" level="warn"/>-->
<!-- <logger name="org.springframework.beans" level="warn"/>-->
<!-- <logger name="org.springframework.context" level="warn"/>-->
<!-- <logger name="org.springframework.web" level="warn"/>-->
<!-- <logger name="org.jboss.netty" level="warn"/>-->
<!-- <logger name="org.apache.http" level="warn"/>-->
</Loggers>
</configuration>
版权声明
本文为[向天再借500年V]所创,转载请带上原文链接,感谢
https://blog.csdn.net/Asia1752/article/details/124320687
边栏推荐
猜你喜欢
随机推荐
mysql C语言连接
Cmake使用基础知识一之基础语法
Neo4j: merge [create if it doesn't exist, modifiable if it already exists]
14 py games source code sharing
手動搭建hyperledger fabric v2.x 生產網絡(四)創建通道,鏈碼的生命周期
On the difference between local variables and global variables
云原生架构下的微服务选型和演进
The penultimate node in the linked list (sequential search, speed pointer)
如何解决项目文档管理中的复杂性?
智能手表的突破和新发展机遇
1958年高考数学真题
N states of prime number solution
那些年不会做的数学题,用Pyhon只需要1分钟?
Raspberry pie Kali system HDMI modifies screen resolution
Wonderful review | the sixth issue of "source" - open source economy and industrial investment
Cmake uses the basic grammar of basic knowledge I
A growing tree
健身房会员管理系统需求分析文档
824. Goat Latin (Analog)
合并两个有序链表(迭代)









