| <?xml version="1.0" encoding="UTF-8"?> |
| <Configuration status="OFF"> |
| <Filters> |
| <DynamicThresholdFilter key="loginId" defaultThreshold="ERROR" |
| onMatch="ACCEPT" onMismatch="NEUTRAL"> |
| <KeyValuePair key="User1" value="DEBUG"/> |
| </DynamicThresholdFilter> |
| <MapFilter onMatch="ACCEPT" onMismatch="NEUTRAL" operator="or"> |
| <KeyValuePair key="eventId" value="Login"/> |
| <KeyValuePair key="eventId" value="Logout"/> |
| </MapFilter> |
| <Marker marker="EVENT" onMatch="ACCEPT" onMismatch="NEUTRAL"/> |
| <ContextMapFilter onMatch="ACCEPT" onMismatch="NEUTRAL" operator="or"> |
| <KeyValuePair key="User1" value="DEBUG"/> |
| <KeyValuePair key="User2" value="WARN"/> |
| </ContextMapFilter> |
| <StructuredDataFilter onMatch="ACCEPT" onMismatch="NEUTRAL" operator="or"> |
| <KeyValuePair key="id" value="Login"/> |
| <KeyValuePair key="id" value="Logout"/> |
| </StructuredDataFilter> |
| <!--<TimeFilter start="05:00:00" end="05:30:00" onMatch="ACCEPT" onMismatch="NEUTRAL"/>--> |
| </Filters> |
| <Appenders> |
| <Console name="Console" target="SYSTEM_OUT"> |
| <PatternLayout pattern="%p %c{1.} [%t] %X{aKey} %X %m%ex%n" /> |
| </Console> |
| <File name="File" fileName="target/gcfreefileMixed.log" bufferedIO="false"> |
| <!--<TimeFilter start="05:00:00" end="05:30:00" onMatch="ACCEPT" onMismatch="NEUTRAL"/>--> |
| <PatternLayout> |
| <Pattern>%d{yyyy-MM-dd'T'HH:mm:ss,SSS}{UTC} %r %enc{'/} %notEmpty{[%marker]} %sn %markerSimpleName %MAP %maxLen{%marker}{10} %equals{%markerSimpleName}{test}{substitute} %p %c{1.} [%t] %m%n %highlight{%style{%d}{bright,cyan} %p %c{1.} [%t] %m%n}</Pattern> |
| </PatternLayout> |
| </File> |
| <RollingFile name="RollingFile" fileName="target/gcfreeRollingFileMixed.log" |
| filePattern="target/gcfree-%d{MM-dd-yy-HH-mm-ss}.log.gz"> |
| <!--<TimeFilter start="05:00:00" end="05:30:00" onMatch="ACCEPT" onMismatch="NEUTRAL"/>--> |
| <PatternLayout> |
| <Pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSS}{UTC} %r %sn %markerSimpleName %MAP %maxLen{%marker}{10} %p %c{1.} [%t] %m%n %highlight{%style{%d}{bright,cyan} %p %c{1.} [%t] %m%n}</Pattern> |
| </PatternLayout> |
| <Policies> |
| <SizeBasedTriggeringPolicy size="50M" /> |
| </Policies> |
| </RollingFile> |
| <RandomAccessFile name="RandomAccessFile" fileName="target/gcfreeRAFMixed.log" immediateFlush="false" append="false"> |
| <!--<TimeFilter start="05:00:00" end="05:30:00" onMatch="ACCEPT" onMismatch="NEUTRAL"/>--> |
| <PatternLayout> |
| <Pattern>%d{DEFAULT}{UTC} %r %sn %markerSimpleName %MAP %maxLen{%marker}{10} %p %c{1.} [%t] %X{aKey} %m %ex%n %highlight{%style{%d}{bright,cyan} %p %c{1.} [%t] %X{aKey} %m %ex%n}</Pattern> |
| </PatternLayout> |
| </RandomAccessFile> |
| <RollingRandomAccessFile name="RollingRandomAccessFile" |
| fileName="target/gcfreeRRAFMixed.log" |
| filePattern="target/afterRollover-%i.log" append="false" |
| immediateFlush="false"> |
| <PatternLayout> |
| <Pattern>%d{DEFAULT}{UTC} %p %c{1.} [%t] %X{aKey} %m %location %ex%n %highlight{%style{%d}{bright,cyan} %p %c{1.} [%t] %X{aKey} %m %location %ex%n}</Pattern> |
| </PatternLayout> |
| <Policies> |
| <SizeBasedTriggeringPolicy size="50 M"/> |
| </Policies> |
| </RollingRandomAccessFile> |
| <MemoryMappedFile name="MemoryMappedFile" |
| fileName="target/gcfreemmapMixed.log" |
| immediateFlush="false" append="false"> |
| <PatternLayout> |
| <Pattern>%d{DEFAULT}{UTC} %p %c{1.} [%t] %X{aKey} %m%ex%n %highlight{%style{%d}{bright,cyan} %p %c{1.} [%t] %X{aKey} %m%ex%n}</Pattern> |
| </PatternLayout> |
| </MemoryMappedFile> |
| <RandomAccessFile name="RandomAccessFileGelf" fileName="target/gcfreeMixed.json" immediateFlush="false" append="false"> |
| <GelfLayout compressionType="OFF"/> |
| </RandomAccessFile> |
| </Appenders> |
| <Loggers> |
| <AsyncLogger name="org.apache.logging.log4j.core.test.gc.GcFreeMixedSyncAyncLoggingTest" |
| level="trace" includeLocation="false"> |
| <Property name="prop1">value1</Property> |
| <Property name="prop2">value2</Property> |
| <appender-ref ref="Console" level="FATAL" /> |
| <appender-ref ref="File"/> |
| <appender-ref ref="RandomAccessFile"/> |
| <appender-ref ref="RollingRandomAccessFile"/> |
| <appender-ref ref="File"/> |
| <appender-ref ref="RollingFile"/> |
| <appender-ref ref="MemoryMappedFile"/> |
| <appender-ref ref="RandomAccessFileGelf"/> |
| </AsyncLogger> |
| <Root level="trace" includeLocation="false"> |
| <Property name="prop1">value1</Property> |
| <Property name="prop2">value2</Property> |
| <appender-ref ref="Console" level="FATAL" /> |
| <appender-ref ref="File"/> |
| <appender-ref ref="RandomAccessFile"/> |
| <appender-ref ref="RollingRandomAccessFile"/> |
| <appender-ref ref="File"/> |
| <appender-ref ref="RollingFile"/> |
| <appender-ref ref="MemoryMappedFile"/> |
| <appender-ref ref="RandomAccessFileGelf"/> |
| </Root> |
| </Loggers> |
| </Configuration> |