[ https://issues.apache.org/jira/browse/KARAF-5354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16181017#comment-16181017 ]
Emily Berk edited comment on KARAF-5354 at 10/18/17 3:26 PM: ------------------------------------------------------------- [~jbonofre], there appears to be an issue with configuring failover appenders in the {{org.ops4j.pax.logging.cfg}} file. Or, possibly, we haven't discovered the right syntax. An attempt to configure a failover like this: {code} log4j2.appender.myFailoverAppender.type = Failover log4j2.appender.myFailoverAppender.name = myFailoverAppender log4j2.appender.myFailoverAppenderr.primary = myMainAppender log4j2.appender.myFailoverAppender.failovers.type = Failovers log4j2.appender.myFailoverAppender.failovers.appenderRef.myBackupAppender.ref = myBackupAppender {code} results in an {{ERROR appender Failover has no parameter that matches element Failovers}} error. Furthermore, the xml syntax is a lot easier to read and modify. was (Author: emily.berk): [~jbonofre], there appears to be an issue with configuring failover appenders in the {{org.ops4j.pax.logging.cfg}} file. Or, possibly, we haven't discovered the right syntax. An attempt to configure a failover like this: {code} log4j2.appender.myFailoverAppender.type = Failover log4j2.appender.myFailoverAppender.name = myFailoverAppender log4j2.appender.myFailoverAppenderr.primary = myMainAppender log4j2.appender.myFailoverAppender.failovers.type = Failovers log4j2.appender.myFailoverAppender.failovers.appenderRef.myBackupAppender.ref = myBackupAppender {code} results in an {{ERROR appender Failover has no parameter that matches element Failovers}} error. Furthermore, the xml-syntax is a lot easier to read and modify. > The log:get and log:set commands should support etc/log4j2.xml configuration > ---------------------------------------------------------------------------- > > Key: KARAF-5354 > URL: https://issues.apache.org/jira/browse/KARAF-5354 > Project: Karaf > Issue Type: New Feature > Components: karaf-logging > Affects Versions: 4.1.2 > Reporter: Emily Berk > Assignee: Guillaume Nodet > Priority: Minor > Fix For: 4.2.0 > > > Steps to reproduce: > 1. Replace contents of {{etc/org.ops4j.pax.logging.cfg}} with > {code} > org.ops4j.pax.logging.log4j2.config.file=${karaf.etc}/log4j2.xml > {code} > 2. Add an {{etc/log4j2.xml}} configuration file with a configuration like > {code} > <?xml version="1.0" encoding="UTF-8"?> > <Configuration status="info"> > <Appenders> > <PaxOsgi name="paxosgi" filter="VmLogAppender"/> > </Appenders> > <Loggers> > <Root level="info"> > <AppenderRef ref="paxosgi"/> > </Root> > </Loggers> > </Configuration> > {code} > 3. Start up Karaf. > Notice that {{log:set}} and {{log:get}} fail with > {code} > 2017-09-07 18:28:39,352 | ERROR | nsole user karaf | ShellUtil > | 42 - org.apache.karaf.shell.core - 4.1.2 | Exception caught while > executing command > java.lang.IllegalStateException: Unrecognized configuration > at > org.apache.karaf.log.core.internal.LogServiceImpl.getDelegate(LogServiceImpl.java:55) > [36:org.apache.karaf.log.core:4.1.2] > at > org.apache.karaf.log.core.internal.LogServiceImpl.setLevel(LogServiceImpl.java:98) > [36:org.apache.karaf.log.core:4.1.2] > at > org.apache.karaf.log.command.SetLogLevel.execute(SetLogLevel.java:48) > [36:org.apache.karaf.log.core:4.1.2] > at > org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:84) > [42:org.apache.karaf.shell.core:4.1.2] > at > org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:68) > [42:org.apache.karaf.shell.core:4.1.2] > at > org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:86) > [42:org.apache.karaf.shell.core:4.1.2] > at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:571) > [42:org.apache.karaf.shell.core:4.1.2] > at > org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:497) > [42:org.apache.karaf.shell.core:4.1.2] > at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:386) > [42:org.apache.karaf.shell.core:4.1.2] > at org.apache.felix.gogo.runtime.Pipe.doCall(Pipe.java:417) > [42:org.apache.karaf.shell.core:4.1.2] > at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:229) > [42:org.apache.karaf.shell.core:4.1.2] > at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:59) > [42:org.apache.karaf.shell.core:4.1.2] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > [?:?] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [?:?] > at java.lang.Thread.run(Thread.java:745) [?:?] > {code} > {{log:set}} and {{log:get}} should behave the same when using the > {{log4j2.xml}} configuration as when using the {{org.ops4j.pax.logging.cfg}} > configuration. -- This message was sent by Atlassian JIRA (v6.4.14#64029)