How to configure logback for package?

Opal picture Opal · Jun 20, 2012 · Viewed 43.3k times · Source

Is it possible to configure logback to log at e.g. WARN or INFO level for all packages but x.y? And then separate configuration for package x.y only.

Answer

Bob Kuhar picture Bob Kuhar · Feb 13, 2013

I don't know of any way you can get the "NOT" package aspect of your question, but I routinely log one package at DEBUG and all the rest at INFO and...above is it...WARN and ERROR. This is straight up-the-middle logback. My loggers are all like...

package rekdev.org.service.api;
public class DefaultConfigResource {
    // ...
    private static final Logger log = LoggerFactory.getLogger( DefaultConfigResource.class );
    // ...
}

...on a logback.xml configuration like...

  <logger name="rekdev.org.service.api" level="debug" />
  ...
  <root level="info">
    <appender-ref ref="STDOUT" />
    <appender-ref ref="DAILY_ROLLING" />
    <appender-ref ref="SYSLOG" />
  </root>

Has the effect of most output popping out at INFO, WARN, ERROR but all the rekdev.org.service.api classes. All the classes in the rekdev.org.service.api package produce output at DEBUG, INFO, WARN, ERROR.

Or did I misunderstand your questions entirely?