首页
登录 | 注册

log4j2配置详解

//status用来指定log4j本身的打印日志的级别.
<Configuration status="info">
    //配置输出文件
	<properties>
		<property name="LOG_HOME">logs/</property>
		<property name="FILE_NAME">baseLog</property>
	</properties>
     //Appenders节点
	<Appenders>
		<!-- 控制台输出配置 -->
          //Console节点用来定义输出到控制台的Appender.
		<Console name="Console" target="SYSTEM_OUT">
            //日志输出格式配置,t:当前线程,F:输出日志信息所属的类的类名
            //L:出日志信息的语句处于它所在的类的第几行
            //m:输出代码中指定的信息,如log(message)中的message
            //n:输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
            //d:输出日志时间点的日期或时间
			<PatternLayout pattern="%logger{36} %-5level %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%F:%L] - %msg%n" />
		</Console>
		<Console name="JettyInfo" target="SYSTEM_OUT">
			<PatternLayout pattern="%logger{36} %-5level %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%F:%L] - %msg%n" />
		</Console>
         //RollingFile节点用来定义超过指定大小自动删除旧的创建新的的Appender.
		<RollingRandomAccessFile name="BaseLogFile" fileName="${LOG_HOME}/${FILE_NAME}.log" filePattern="${LOG_HOME}/$${date:yyyy-MM}/${FILE_NAME}-%d{yyyy-MM-dd}.log">
			<PatternLayout pattern="%logger{36} %-5level %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%F:%L] - %msg%n" />
			<Policies>
				<TimeBasedTriggeringPolicy modulate="true" interval="1" />
				<SizeBasedTriggeringPolicy size="100 MB" />
			</Policies>
			<!-- 指定最多保存的文件个数 -->
			<DefaultRolloverStrategy max="20" />
		</RollingRandomAccessFile>
		<!-- 异步写日志 -->
		<Async name="Async">
			<AppenderRef ref="BaseLogFile" />
		</Async>
	</Appenders>

    //Loggers节点
	<Loggers>
        //Logger节点用来单独指定日志的形式,比如要为指定包下的class指定不同的日志级别等
		<Logger name="baseLog" level="info" additivity="true">
			<AppenderRef ref="BaseLogFile" />
		</Logger>
		<Logger name="org.eclipse.jetty" level="info" additivity="false">
			<AppenderRef ref="JettyInfo" />
		</Logger>
        //Root节点用来指定项目的根日志,如果没有单独指定Logger,那么就会默认使用该Root日志输出
		<Root level="error">
            //AppenderRef:Root的子节点,用来指定该日志输出到哪个Appender
			<AppenderRef ref="Console" />
		</Root>
	</Loggers>
</Configuration>

其他博主的详细解析:参考



2020 jeepxie.net webmaster#jeepxie.net
10 q. 0.008 s.
京ICP备10005923号