Uploaded image for project: 'JBoss Log Manager'
  1. JBoss Log Manager
  2. LOGMGR-89

LogContext's root logger is not created with a strong child hash map when strong=true

    XMLWordPrintable

Details

    Description

      When deploying an application in EAP 6 that has a log4j.xml that is deployed by the logging subsystem, it seems that the LogContext is somehow losing a reference to a custom logger, causing all configuration for that logger to be lost.

      Given this configuration

      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
      <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
        <appender name="SAMPLE_APP" class="org.apache.log4j.RollingFileAppender">
          <param name="File" value="${jboss.server.log.dir}/SampleApp.log"/>
          <param name="MaxFileSize" value="2MB"/>
          <param name="MaxBackupIndex" value="5"/>
          <param name="Append" value="true"/>
          <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %c [%t] %-5p - %m%n"/>
          </layout>
        </appender>
        <appender name="SAMPLE_APP_MDB" class="org.apache.log4j.RollingFileAppender">
          <param name="File" value="${jboss.server.log.dir}/SampleApp-MDB.log"/>
          <param name="MaxFileSize" value="2MB"/>
          <param name="MaxBackupIndex" value="5"/>
          <param name="Append" value="true"/>
          <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %c [%t] %-5p - %m%n"/>
          </layout>
        </appender>
        <logger name="com.redhat" additivity="false">
          <level value="TRACE"/>
          <appender-ref ref="SAMPLE_APP_MDB"/>
        </logger>
        <root>
          <priority value="TRACE"/>
          <appender-ref ref="SAMPLE_APP"/>
        </root>
      </log4j:configuration>
      

      Every log message ends up in SAMPLE_APP, regardless of which logger was used. One message like this is also printed to the log:

      11:33:00,110 INFO  [stdout] (Finalizer) log4j: Finalizing appender named [SAMPLE_APP_MDB].
      

      Attachments

        Activity

          People

            dlloyd@redhat.com David Lloyd
            rh-ee-klape Kyle Lape
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: