[ https://issues.apache.org/jira/browse/LOG4J2-2816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17082433#comment-17082433 ]
Denis Orlov commented on LOG4J2-2816: ------------------------------------- Our slightly obfuscated log4j2.xml {code} <?xml version="1.0" encoding="UTF-8"?> <Configuration packages="algos.util.log4j"> <Appenders> <Console name="stdout"> <PatternLayout pattern="%date %-5level [%-20thread] %logger{0} - %msg{nolookups}%xException%n"/> </Console> <!-- 'logs.root' sys env defined for Colo SOR --> <RollingRandomAccessFile name="file" filename="${sys:logs.root:-logs}/fx-engine.log" filePattern="${sys:logs.root:-logs}/fx-engine.log.%d{yyyy-MM-dd_HH}.%i" bufferSize="8192" immediateFlush="false"> <PatternLayout> <Pattern>%date %-5level [%-20thread] %logger{0} - %msg{nolookups}%xException%n</Pattern> </PatternLayout> <Policies> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="50 MB"/> <TimeBasedTriggeringPolicy/> </Policies> <!-- just in case, we need to bear in mind new rollover deletion logic inside - http://logging.apache.org/log4j/2.x/manual/appenders.html#DefaultRolloverStrategy By default, the max counter is seven, after files will be overwritten. --> <DefaultRolloverStrategy max="65536"/> </RollingRandomAccessFile> <!-- 'logs.root' sys env defined for Colo SOR --> <RollingRandomAccessFile name="errorFile" filename="${sys:logs.root:-logs}/errors-fx-engine.log" filePattern="${sys:logs.root:-logs}/errors-fx-engine.log.%d{yyyy-MM-dd_HH}.%i" immediateFlush="true"> <Filters> <ThresholdFilter level="WARN"/> </Filters> <PatternLayout> <Pattern>%date %-5level [%-20thread] %logger{0} - %msg{nolookups}%xException%n</Pattern> </PatternLayout> <Policies> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="50 MB"/> <TimeBasedTriggeringPolicy/> </Policies> <DefaultRolloverStrategy max="65536"/> </RollingRandomAccessFile> <!-- 'logs.root' sys env defined for Colo SOR --> <RollingRandomAccessFile name="metricsFile" filename="${sys:logs.root:-logs}/metrics/metrics.log" filePattern="${sys:logs.root:-logs}/metrics/metrics.log.%d{yyyy-MM-dd_HH}.%i" immediateFlush="false"> <PatternLayout> <Pattern>%date %-5level %logger{0} - %msg{nolookups}%xException%n</Pattern> </PatternLayout> <Policies> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="50 MB"/> <TimeBasedTriggeringPolicy/> </Policies> <DefaultRolloverStrategy max="65536"/> </RollingRandomAccessFile> <!-- 'logs.root' sys env defined for Colo SOR --> <RollingRandomAccessFile name="fwdPointsFile" filename="${sys:logs.root:-logs}/fwd-points.log" filePattern="${sys:logs.root:-logs}/fwd-points.log.%d{yyyy-MM-dd_HH}.%i" immediateFlush="false"> <PatternLayout> <Pattern>%date %-5level %logger{0} - %msg{nolookups}%xException%n</Pattern> </PatternLayout> <Policies> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="50 MB"/> <TimeBasedTriggeringPolicy/> </Policies> <DefaultRolloverStrategy max="65536"/> </RollingRandomAccessFile> </Appenders> <Loggers> <Logger name="org.springframework" level="INFO"/> <Logger name="fxoptions.common" level="INFO"/> <Logger name="statsserver" level="INFO"/> <Logger name="fx.upstream" level="DEBUG"/> <Logger name="fx.marketdata" level="DEBUG"/> <Logger name="fx.marketdata.komodo" level="INFO"/> <Logger name="fx.marketdata.filtering" level="INFO"/> <Logger name="marketdata.filtering" level="INFO"/> <Logger name="komodo.arbitrator" level="INFO"/> <Logger name="services.ordermgmt" level="DEBUG"/> <Logger name="services.referencedata" level="INFO"/> <Logger name="services.streamconnectors " level="DEBUG"/> <Logger name="services.streamconnectors" level="DEBUG"/> <Logger name="komodo.switcher" level="INFO"/> <Logger name="sor" level="DEBUG"/> <Logger name="sor.breakdown.QuantityRounding" level="INFO"/> <Logger name="sor.phases.IcebergProcessor" level="INFO"/> <Logger name="sor.phases.PhaseHelper" level="INFO"/> <Logger name="sor.phases.smartstop" level="DEBUG"/> <Logger name="sor.Tickets" level="INFO"/> <Logger name="state.CrossUpstreamTicket" level="INFO"/> <Logger name="execution.OpenMarketsSupplier" level="INFO"/> <Logger name="circuitbreakers.ParentExecutionOvertradeCircuitBreaker" level="DEBUG"/> <Logger name="fx.crosses" level="INFO"/> <Logger name="fx.crosses.referencedata" level="DEBUG"/> <Logger name="fx.crosses.marketdata.CrossBook" level="INFO"/> <Logger name="fx.crosses.marketdata.CrossBookFactory" level="INFO"/> <Logger name="fx.marketdata.scheduled.cross.CrossMdAdapter" level="INFO"/> <Logger name="venues" level="DEBUG"/> <Logger name="fx.execution.spot_equivalents" level="INFO" additivity="true"> <AppenderRef ref="fwdPointsFile"/> </Logger> <Logger name="fx.execution.spot_equivalents.fp.BaseForwardPointsProvider.fwdPoints" level="ALL" additivity="false"> <AppenderRef ref="fwdPointsFile"/> </Logger> <Logger name="fx.execution.MigAlgoFlaggingService" level="INFO"/> <Logger name="fx.execution" level="TRACE"/> <Logger name="fx.fixing" level="DEBUG"/> <Logger name="komodo" level="INFO"/> <Logger name="komodo.transport.tnw.lbm.LBMContextWrapper" level="DEBUG"/> <Logger name="metrics" level="ALL" additivity="false"> <AppenderRef ref="metricsFile"/> </Logger> <Root level="INFO"> <AppenderRef ref="file"/> <AppenderRef ref="errorFile"/> </Root> </Loggers> </Configuration> {code} > NullPointerException from AsyncLogger > ------------------------------------- > > Key: LOG4J2-2816 > URL: https://issues.apache.org/jira/browse/LOG4J2-2816 > Project: Log4j 2 > Issue Type: Bug > Components: Core > Affects Versions: 2.13.0 > Reporter: Denis > Priority: Minor > > We've got several times following NullPointerException (example from our > stdout.log): > > {code:java} > 84449.232: [purging class loader data graph, 0.0000003 secs] > AsyncLogger error handling event seq=1037012, > value='org.apache.logging.log4j.core.async.RingBufferLogEvent@2a7b2d78': > java.lang.NullPointerException: null > java.lang.NullPointerException > at > org.apache.logging.log4j.core.async.RingBufferLogEvent.execute(RingBufferLogEvent.java:161) > at > org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:46) > at > org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:29) > at > com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:168) > at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125) > at java.lang.Thread.run(Thread.java:748) > AsyncLogger error handling event seq=1037022, > value='org.apache.logging.log4j.core.async.RingBufferLogEvent@d5d330f': > java.lang.NullPointerException: null > java.lang.NullPointerException > at > org.apache.logging.log4j.core.async.RingBufferLogEvent.execute(RingBufferLogEvent.java:161) > at > org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:46) > at > org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:29) > at > com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:168) > at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125) > at java.lang.Thread.run(Thread.java:748) > 84450.232: [deflating idle monitors, 0.0000624 secs] > {code} > > What is interesting this NPEs always preceeded by > {code} > 84449.232: [purging class loader data graph, 0.0000003 secs] vm message > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)