[ https://issues.apache.org/jira/browse/LOG4J2-2872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Work on LOG4J2-2872 started by Piotr Karwasz. --------------------------------------------- > Unable to parse Custom Log Levels > --------------------------------- > > Key: LOG4J2-2872 > URL: https://issues.apache.org/jira/browse/LOG4J2-2872 > Project: Log4j 2 > Issue Type: Bug > Components: Core > Affects Versions: 2.13.3 > Reporter: Alla Gofman > Assignee: Piotr Karwasz > Priority: Major > > When I set the logger level to custom value I get exception although my > custom levels was created on init. > WARN Error while converting string [alert] to type [class > org.apache.logging.log4j.Level]. Using default value [null]. > java.lang.IllegalArgumentException: Unknown level constant [ALERT]. > > The CustomLevel not added to Level.LEVELS ( ConcurrentMap<String, Level> > LEVELS). > My configuration: > {code:xml} > <Configuration status="DEBUG" monitorInterval="60"> > <Properties> > <Property name="log-path">${cm.home}/../../proclog</Property > <Property name="log-pattern">%d\{yyyy-MM-dd HH:mm:ss,SSS} %-2p [%t] > (%logger\{1}:%L) - %m%n</Property> > </Properties> > <CustomLevels> > <CustomLevel name="emerg" intLevel="0" /> > <CustomLevel name="alert" intLevel="1" /> > <CustomLevel name="crit" intLevel="2" /> > <CustomLevel name="err" intLevel="3" /> > <CustomLevel name="warning" intLevel="4" /> > <CustomLevel name="notice" intLevel="5" /> > <CustomLevel name="info" intLevel="6" /> > <CustomLevel name="debug" intLevel="7" /> > </CustomLevels> > <Appenders> > <Console name="Console-Appender" target="SYSTEM_OUT"> > <PatternLayout pattern="${log-pattern}" /> > </Console> > <RollingFile name="Alerts-Appender" fileName="${log-path}/alerts.log" > filePattern="${log-path}/alerts%i.log"> > <PatternLayout pattern="%date\{dd-MM-yy HH:mm:ss} | > %level\{lowerCase=true} | %msg%n" /> > <Policies> > <SizeBasedTriggeringPolicy size="10 MB" /> > </Policies> > <DefaultRolloverStrategy fileIndex="min" max="5" /> > </RollingFile> > </Appenders> > <Loggers> > <Logger name="ALERT_LOGGER" *level="alert"* additivity="false"> > <AppenderRef ref="Alerts-Appender" /> > <AppenderRef ref="Console-Appender" /> > </Logger> > <Root level="debug"> > <AppenderRef ref="Console-Appender" /> > </Root> > </Loggers> > </Configuration> > {code} > h2. {{Please see log in debug:}} > {code} > 2020-06-17 19:23:31,770 main DEBUG PluginManager 'Lookup' found 16 plugins > 2020-06-17 19:23:31,772 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,773 main DEBUG createLevel(name="emerg", intLevel="0") > 2020-06-17 19:23:31,773 main DEBUG Creating CustomLevel(name='emerg', > intValue=0) > 2020-06-17 19:23:31,774 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,774 main DEBUG createLevel(name="alert", intLevel="1") > 2020-06-17 19:23:31,774 main DEBUG Creating CustomLevel(name='alert', > intValue=1) > 2020-06-17 19:23:31,774 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,775 main DEBUG createLevel(name="crit", intLevel="2") > 2020-06-17 19:23:31,775 main DEBUG Creating CustomLevel(name='crit', > intValue=2) > 2020-06-17 19:23:31,775 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,776 main DEBUG createLevel(name="err", intLevel="3") > 2020-06-17 19:23:31,776 main DEBUG Creating CustomLevel(name='err', > intValue=3) > 2020-06-17 19:23:31,776 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,776 main DEBUG createLevel(name="warning", intLevel="4") > 2020-06-17 19:23:31,777 main DEBUG Creating CustomLevel(name='warning', > intValue=4) > 2020-06-17 19:23:31,777 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,777 main DEBUG createLevel(name="notice", intLevel="5") > 2020-06-17 19:23:31,777 main DEBUG Creating CustomLevel(name='notice', > intValue=5) > 2020-06-17 19:23:31,778 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,778 main DEBUG createLevel(name="info", intLevel="6") > 2020-06-17 19:23:31,779 main DEBUG Creating CustomLevel(name='info', > intValue=6) > 2020-06-17 19:23:31,779 main DEBUG Building Plugin[name=CustomLevel, > class=org.apache.logging.log4j.core.config.CustomLevelConfig]. > 2020-06-17 19:23:31,780 main DEBUG createLevel(name="debug", intLevel="7") > 2020-06-17 19:23:31,780 main DEBUG Creating CustomLevel(name='debug', > intValue=7) > 2020-06-17 19:23:31,780 main DEBUG Building Plugin[name=CustomLevels, > class=org.apache.logging.log4j.core.config.CustomLevels]. > 2020-06-17 19:23:31,780 main DEBUG > createCustomLevels(=\{CustomLevel[name=emerg, intLevel=0], > CustomLevel[name=alert, intLevel=1], CustomLevel[name=crit, intLevel=2], > CustomLevel[name=err, intLevel=3], CustomLevel[name=warning, intLevel=4], > CustomLevel[name=notice, intLevel=5], CustomLevel[name=info, intLevel=6], > CustomLevel[name=debug, intLevel=7]}) > ... > 2020-06-17 19:23:31,864 main WARN Error while converting string [alert] to > type [class org.apache.logging.log4j.Level]. Using default value [null]. > java.lang.IllegalArgumentException: Unknown level constant [ALERT].2020-06-17 > 19:23:31,864 main WARN Error while converting string [alert] to type [class > org.apache.logging.log4j.Level]. Using default value [null]. > java.lang.IllegalArgumentException: Unknown level constant [ALERT]. at > org.apache.logging.log4j.Level.valueOf(Level.java:320) at > org.apache.logging.log4j.core.config.plugins.convert.TypeConverters$LevelConverter.convert(TypeConverters.java:288) > at > org.apache.logging.log4j.core.config.plugins.convert.TypeConverters$LevelConverter.convert(TypeConverters.java:284) > at > org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.convert(TypeConverters.java:419) > at > org.apache.logging.log4j.core.config.plugins.visitors.AbstractPluginVisitor.convert(AbstractPluginVisitor.java:149) > at > org.apache.logging.log4j.core.config.plugins.visitors.PluginAttributeVisitor.visit(PluginAttributeVisitor.java:45) > at > org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.generateParameters(PluginBuilder.java:258) > at > org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:135) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288) > at > org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618) > at > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691) > at > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708) > at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45) > at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194) at > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138) > at > org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:45) > at > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48) > at > org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30) > at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:358) at > org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383) > > 2020-06-17 19:23:31,866 main DEBUG createLogger(additivity="false", > level="null", name="com.bmc.ctm.saas.alerts", includeLocation="null", > =\{Alerts-Appender, Console-Appender}, ={}, > Configuration(C:\Bitbucket\saas-alerts-collector\target\classes\log4j2.xml), > Filter=null) > {code} -- This message was sent by Atlassian Jira (v8.20.1#820001)