[
https://issues.apache.org/jira/browse/LOG4J2-441?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andreas Rytina updated LOG4J2-441:
----------------------------------
Attachment: log4j2.xml.row13
log4j2.xml.row12
log4j2.xml.row11
log4j2.xml.row10
log4j2.xml.row9
log4j2.xml.row8
log4j2.xml.row7
log4j2.xml.row6
log4j2.xml.row5
log4j2.xml.row4
log4j2.xml.row3
log4j2.xml.row2
log4j2.xml.row1
Now I attached for each row one configuration file. This should make it easier
for testing
> logger level configuration does not work correct
> ------------------------------------------------
>
> Key: LOG4J2-441
> URL: https://issues.apache.org/jira/browse/LOG4J2-441
> Project: Log4j 2
> Issue Type: Bug
> Components: Core
> Reporter: Andreas Rytina
> Attachments: log4j2.xml.row1, log4j2.xml.row10, log4j2.xml.row11,
> log4j2.xml.row12, log4j2.xml.row13, log4j2.xml.row2, log4j2.xml.row3,
> log4j2.xml.row4, log4j2.xml.row5, log4j2.xml.row6, log4j2.xml.row7,
> log4j2.xml.row8, log4j2.xml.row9, log4jtest.zip
>
>
> Configuring the loglevel in the logger does not work in combination with
> configuring the loglevel at the appender-refs. I analyzed this with the
> beta9. See the table which lists various loglevel configurations for the 3
> loggers. The column format for the table is:
> Column 1-6 are the logger with their level config (level@logger1,
> level@appender-ref)(level@logger2, level@appender-ref)(level@logger3,
> level@appender-ref)
> Column 7 is the actual output
> Column 8 is the expected Output
> I also attached the test which can be taken to reproduce the according
> behaviour.
> |1|2|3|4|5|6|7|8|
> ||level 1 logger||level 1 appender-ref||level 2 logger||level 2
> appender-ref||level 3 logger ||level 3 appender-ref||actual output||expected
> output||
> |-|-|-|info|debug|debug|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|Logger2: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |-|-|-|info|-|debug|-|Logger2: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |-|-|info|info|-|debug|-|Logger2: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |fatal|fatal|info|info|-|debug|-|Logger2: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |info|info|info|info|-|debug|-|Logger2: info logger
> Logger1: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger1: warning logger|
> |debug|debug|info|info| |debug|-|Logger2: info logger
> Logger1: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger1: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger1: warning logger|
> |info|debug|info|info|-|debug|-|Logger2: info logger
> Logger1: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger1: warning logger|
> |debug|info|info|info|-|debug|-|Logger2: info logger
> Logger1: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger1: warning logger|
> |debug|trace|info|info|-|debug|-|Logger2: info logger
> Logger1: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger1: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger1: warning logger|
> |-|-|info|info|fatal|debug|-|Logger2: info logger
> Logger2: warning logger|
> |-|-|info|info|trace|debug|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |-|-|-|info|trace|debug|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> |-|-|info|-|trace|debug|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger2: debug logger
> Logger3: warning logger
> Logger2: warning logger
> Logger2: trace logger|Logger3: info logger
> Logger2: info logger
> Logger3: debug logger
> Logger3: warning logger
> Logger2: warning logger|
> Here is the log4j2.xml:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8" ?>
> <configuration>
> <appenders>
> <console name="TestConsole0">
> <PatternLayout pattern="RootLogger: %msg%n"/>
> </console>
> <console name="TestConsole1">
> <PatternLayout pattern="Logger1: %msg%n"/>
> </console>
> <console name="TestConsole2">
> <PatternLayout pattern="Logger2: %msg%n"/>
> </console>
> <console name="TestConsole3">
> <PatternLayout pattern="Logger3: %msg%n"/>
> </console>
> </appenders>
>
> <loggers>
> <logger name="" >
> <appender-ref ref="TestConsole1" />
> </logger>
>
> <logger name ="com.log4jtest" level="info">
> <appender-ref ref="TestConsole2" level="info"/>
> </logger>
>
> <logger name ="com.log4jtest.test" level="fatal">
> <appender-ref ref="TestConsole3" level="debug"/>
> </logger>
>
> <root level="error">
> <appender-ref ref="TestConsole0" level="error"/>
> </root>
> </loggers>
> </configuration>
> {code}
> And here are the logging calls:
> {code:title=Log4j2LogLevelTest.java|borderStyle=solid}
> package com.log4jtest.test;
> import static org.junit.Assert.*;
> import org.apache.logging.log4j.LogManager;
> import org.apache.logging.log4j.Logger;
> import org.junit.Test;
> public class Log4j2LogLevelTest {
> private static final Logger logger =
> LogManager.getLogger(Log4j2LogLevelTest.class);
>
> @Test
> public void testLogLevel() {
> logger.info("info logger");
> logger.debug("debug logger");
> logger.warn("warning logger");
> logger.trace("trace logger");
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]