Log4j工具类。
Log4j
xml
appenders:输出位置
loggers
<logger>
元素标记配置,必须有name
属性,可选level
,additivity
。
可以配置一个到多个子元素<appender-ref>
,当发生logevent时,每一个appender都会被调用。
每一个configuration,都必须有一个root logconfig,如果不显示指定,默认。
appender
使用特殊的appender元素标记,或者使用appender
元素标记,且指定type
属性。
必须有name
属性,且唯一。提供给logger使用。
一些appender可以有自定义的layout子元素标记,关于layout元素标记,可以使用特殊的layout元素标记,也可以使用带有type
属性的layout
标记。
filters
可以出现在4个位置:
- 在和appenders,loggers,properties 元素的同级别。 过滤选择接受或拒绝在传入logconfig之前。
- logger元素的子元素。 接受或拒绝特定的logger元素。
- 在appender元素的子元素。
- 在appender引用的元素中。 用于确定logevent是否应该从logger路由到appender 。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| <?xml version="1.0" encoding="UTF-8"?> <Configuration status="debug" name="XMLConfigTest" packages="org.apache.logging.log4j.test"> <Properties> <Property name="filename">target/test.log</Property> </Properties> <ThresholdFilter level="trace"/> <Appenders> <Console name="STDOUT"> <PatternLayout pattern="%m MDC%X%n"/> </Console> <Console name="FLOW"> <PatternLayout pattern="%C{1}.%M %m %ex%n"/> <filters> <MarkerFilter marker="FLOW" onMatch="ACCEPT" onMismatch="NEUTRAL"/> <MarkerFilter marker="EXCEPTION" onMatch="ACCEPT" onMismatch="DENY"/> </filters> </Console> <File name="File" fileName="${filename}"> <PatternLayout> <pattern>%d %p %C{1.} [%t] %m%n</pattern> </PatternLayout> </File> <List name="List"> </List> </Appenders> <Loggers> <Logger name="org.apache.logging.log4j.test1" level="debug" additivity="false"> <ThreadContextMapFilter> <KeyValuePair key="test" value="123"/> </ThreadContextMapFilter> <AppenderRef ref="STDOUT"/> </Logger> <Logger name="org.apache.logging.log4j.test2" level="debug" additivity="false"> <Property name="user">${sys:user.name}</Property> <AppenderRef ref="File"> <ThreadContextMapFilter> **4** <KeyValuePair key="test" value="123"/> </ThreadContextMapFilter> </AppenderRef> <AppenderRef ref="STDOUT" level="error"/> </Logger> <Root level="trace"> <AppenderRef ref="List"/> </Root> </Loggers> </Configuration>
|
含有properties的配置
Propery属性