log4j2.xml

日志级别

log4j规定了默认的几个级别:

  • trace

简单配置


<Configuration>  
	<Appenders>
		<Console name="Console" target="SYSTEM_OUT">
			<PatternLayout pattern="%d{yy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
		Console>
	Appenders>
	<Loggers>
		<logger name="org.hibernate" level="info">logger>
		<root level="debug">
			<AppenderRef ref="Console" />
		root>
	Loggers>
Configuration>
  • Appenders:记录方式(Console/ RollingFile / RollingRandomAccessFile)
  • Console :将日志在控制台输出
  • RollingFile:将日志输出到文件中
  • PatternLayout:日志输出的格式
  • Loggers:日志定义
  • logger :起过滤作用,用name指定包名,level指定级别,日志级别之下不输出
  • root :level属性定义日志级别
  • AppenderRef:关联的日志进行输出
<RollingFile name="errorfile" fileName="../logs/error.log" filePattern="../logs/error.log.%d{yyyy-MM-dd}">
	<PatternLayout>
		<Pattern>%d{yyyy-MM-dd HH:mm:ss} %p $r [%t] %C.%M(%L) | %m%nPattern>
	PatternLayout>				           		 
	<Policies>
		<TimeBasedTriggeringPolicy/>
	Policies> 
RollingFile>
  • Filters:过滤日志输出的级别
  • Policies:日志文件产生的策略
  • TimeBasedTriggeringPolicy:表示每隔一定的时间就产生一个新的日志文件
<RollingFile name="infofile" fileName="../logs/info.log" filePattern="../logs/info.log.%d{yyyy-MM-dd}">
	<PatternLayout>
		<Pattern>%d{yyyy-MM-dd HH:mm:ss} %p $r [%t] %C.%M(%L) | %m%nPattern>
	PatternLayout>
	
	<Filters>
		<ThresholdFilter level="INFO"/>
		<ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/>
	Filters> 
	
	<Policies>
		<TimeBasedTriggeringPolicy/>
	Policies> 
RollingFile>

你可能感兴趣的:(log)