I have three classes with loggers in different packages:
com.asd.def.Class1;
com.some.package.Class2;
com.foo.bar.Class3;
In each class I create a new logger the same way, note that each logger ends with the same "some_logger" name:
private static final Logger debugLogger =
LoggerFactory.getLogger(this.getClass().getCanonicalName() + ".some_logger");
I have an appender in my logback.xml called debuglogger
<appender name="debuglogger" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${logdir}/debug.log</File>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator class="ch.qos.logback.classic.boolex.JaninoEventEvaluator">
<expression>logger.contains("some_logger")</expression>
</evaluator>
<OnMatch>ACCEPT</OnMatch>
<OnMismatch>DENY</OnMismatch>
</filter>
<encoder>
<pattern>%d %5p [%t] \(%F:%L\) - %m%n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<maxIndex>5</maxIndex>
<FileNamePattern>${logdir}/debug.log.%i</FileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>1024KB</MaxFileSize>
</triggeringPolicy>
</appender>
How should I configure my xml to log every line that has DEBUG level since I cannot use a regex in <logger name="*some_logger" ..>
tag and my root logger is only on INFO level.