I would like to configure log4j2 the following way:
Something like:
<Loggers>
<!-- ERROR events are reported to Sentry. -->
<Root level="error">
<AppenderRef ref="Sentry" />
</Root>
<!-- INFO events are reported to log file. -->
<Root level="info">
<AppenderRef ref="myLog" />
</Root>
But of course I get error "Configuration has multiple root loggers. There can be only one.".
You can specify log level for appender as well -
<Loggers>
<Root>
<AppenderRef ref="Sentry" level="error "/>
<AppenderRef ref="myLog" level="info" />
</Root>
</Loggers>
With this configuration, error and above level logs will be sent to Sentry appender. And info and above level logs (including error) will be sent to myLog
Workaround that works for me:
<!-- ERROR events are reported to Sentry. -->
<Root level="error">
<AppenderRef ref="Sentry" />
</Root>
<!-- INFO events are reported to myLog. -->
<Logger name="com" level="info">
<AppenderRef ref="myLog" />
</Logger>
<Logger name="org" level="info">
<AppenderRef ref="myLog" />
</Logger>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With