I have a plugin that I want to log information to an individual file entirely w/o messing with the main log file. Here's the logback.xml in my resources directory for my plugin:
<?xml version="1.0"?>
<configuration>
<appender name="eventLogger" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.dir}/events/events.log</file>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
<append>true</append>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.dir}/events/events-%d.%i.log</fileNamePattern>
<maxHistory>3</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<logger name="event.logs" level="DEBUG" additivity="false">
<appender-ref ref="eventLogger" />
</logger>
I then try and use the logger like this:
private static final Logger LOGGER = LoggerFactory.getLogger("event.logs");
Here are my logging deps in my pom.xml:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.11</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
Seems pretty straight forward but nothing in my plugin is logging. Is it because I haven't specified a root level logger?