Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-3382

${ctx:mdcValue} no longer populating in Property tag

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.17.0
    • None
    • Configuration
    • None

    Description

      Values added to the Thread Context are no longer accessible from Property tags.

      <Properties>
          <Property name="filename.transaction_log">${sys:access.log.location}/${web:contextPath}{}{_}transaction_$${ctx:txLogRecordType}.log
          </Property>
      <Properties>
      <appenders>
          <Routing name="TRANSACTION_LOG">
              <Routes pattern="$${ctx:txLogRecordType}">
                  <Route>
                      <RollingFile name="Rolling-Transaction-Log-${ctx:txLogRecordType}"
                                   fileName="${filename.transaction_log}"
                                   filePattern="${filenamePattern.transaction_log}">
                          <PatternLayout pattern="%m" />
                          <TimeBasedTriggeringPolicy interval="1" />
                          <DefaultRolloverStrategy max="31" />
                      </RollingFile>
                  </Route>
              </Routes>
          </Routing>
      </appenders>

       

      Added to the MDC in Java:

      org.slf4j.MDC.put("txLogRecordType", eventType);

      The file produced now looks like:

      myservice_transaction_${ctx.txLogRecordType}_2022-01-27-16.log

      Prior to upgrading to log4j2 2.17.0, this interpolated as expected.

      Have also tried myserver_transaction_%X{txLogRecordType}.log, but gives similar output file.

      Attachments

        Issue Links

          Activity

            People

              ckozak Carter Kozak
              meanwhileinhell Paul Brown
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: