logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robbie Strickland (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-240) Recursive call to appender error using Flume appender
Date Tue, 07 May 2013 14:41:16 GMT

    [ https://issues.apache.org/jira/browse/LOG4J2-240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13650889#comment-13650889

Robbie Strickland commented on LOG4J2-240:

This turned out (not surprisingly) to be a flume configuration issue on the affected nodes.
The Flume agents on those nodes were not starting properly, and this resulted in the fairly
cryptic recursion error.
> Recursive call to appender error using Flume appender
> -----------------------------------------------------
>                 Key: LOG4J2-240
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-240
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.0-beta5
>         Environment: Ubuntu 12
>            Reporter: Robbie Strickland
>              Labels: flume
> I am using Log4j2 with the Flume appender with the following configuration:
> <?xml version="1.0" encoding="UTF-8"?>
> <configuration status="debug" name="ALI" packages="">
>   <appenders>
>     <Flume name="eventLogger" suppressExceptions="false" compress="false">
>       <Agent host="localhost" port="4141"/>
>       <RFC5424Layout enterpriseNumber="18060" includeMDC="true" appName="com.weather.ali"/>
>     </Flume>
>     <RollingFile name="VTECs" fileName="logs/vtecs.log"
>                  filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
>       <PatternLayout>
>         <pattern>[%d{ISO8601}] %m%n</pattern>
>       </PatternLayout>
>       <Policies>
>         <TimeBasedTriggeringPolicy />
>         <SizeBasedTriggeringPolicy size="250 MB"/>
>       </Policies>
>     </RollingFile>
>   </appenders>
>   <loggers>
>     <root level="debug">
>       <appender-ref ref="eventLogger"/>
>     </root>
>     <logger name="VTEC" level="debug">
>       <appender-ref ref="VTECs"/>
>     </logger>
>   </loggers>
> </configuration>
> This works as expected on a couple nodes, but the remaining nodes produce the following
> ERROR Recursive call to appender eventLogger
> Here is the full output of the Log4j bootstrap:
> 2013-05-07 09:21:59,033 DEBUG Calling createAgent on class org.apache.logging.log4j.flume.appender.Agent
for element Agent with params(host="localhost", port="4141")
> 2013-05-07 09:21:59,040 DEBUG Calling createLayout on class org.apache.logging.log4j.core.layout.RFC5424Layout
for element RFC5424Layout with params(facility="null", id="null", enterpriseNumber="18060",
includeMDC="true", mdcId="null", mdcPrefix="null", eventPrefix="null", newLine="null", newLineEscape="null",
appName="com.weather.ali", messageId="null", mdcExcludes="null", mdcIncludes="null", mdcRequired="null",
charset="null", exceptionPattern="null", Configuration(MyApp))
> 2013-05-07 09:22:02,148 DEBUG Generated plugins in 3.106963125 seconds
> 2013-05-07 09:22:02,156 DEBUG Calling createAppender on class org.apache.logging.log4j.flume.appender.FlumeAppender
for element Flume with params(agents={host=localhost port=4141}, properties={}, embedded="null",
type="null", dataDir="null", connectTimeout="null", requestTimeout="null", agentRetries="null",
maxDelay="null", name="eventLogger", suppressExceptions="false", mdcExcludes="null", mdcIncludes="null",
mdcRequired="null", mdcPrefix="null", eventPrefix="null", compress="false", batchSize="null",
null, RFC5424Layout(facility=LOCAL0 appName=com.weather.ali defaultId=Audit enterpriseNumber=18060
newLine=false includeMDC=true messageId=null), null)
> 2013-05-07 09:22:02,159 DEBUG Starting FlumeAvroManager FlumeAvro[localhost:4141]
> 2013-05-07 09:22:02,552 DEBUG Calling createAppenders on class org.apache.logging.log4j.core.config.plugins.AppendersPlugin
for element appenders with params(appenders={eventLogger})
> 2013-05-07 09:22:06,774 DEBUG Generated plugins in 4.221008626 seconds
> 2013-05-07 09:22:06,776 DEBUG Calling createAppenderRef on class org.apache.logging.log4j.core.config.AppenderRef
for element appender-ref with params(ref="eventLogger", level="null", null)
> 2013-05-07 09:22:06,778 DEBUG Calling createLogger on class org.apache.logging.log4j.core.config.LoggerConfig$RootLogger
for element root with params(additivity="null", level="debug", includeLocation="null", appender-ref={org.apache.logging.log4j.core.config.AppenderRef@55ed34f1},
properties={}, Configuration(MyApp), null)
> 2013-05-07 09:22:06,779 DEBUG Calling createLoggers on class org.apache.logging.log4j.core.config.plugins.LoggersPlugin
for element loggers with params(loggers={root})
> 2013-05-07 09:22:06,779 DEBUG Shutting down OutputStreamManager SYSTEM_OUT
> 2013-05-07 09:22:06,779 DEBUG Reconfiguration completed
> 2013-05-07 09:22:07,237 ERROR Recursive call to appender eventLogger
> Why would this work on some nodes and not on others? I have looked at the code where
this error is generated, and it appears to get called whenever the appender code gets called
more than once. I see no reason why this should happen.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org

View raw message