[logback-user] tomcat internal logs + logback app logs in one file

Rohi Fadlun bench83 at gmail.com
Wed Nov 23 11:36:28 CET 2011


Hi,
I'm working on a project that needs to have tomcat internal logs and
application logs in one file.
At the moment I'm using logback to log tomcat internals with grgrzybek's
project (https://github.com/grgrzybek/tomcat-slf4j-logback) in which there
is a modified version of juli that redirects calls to logback - if I didn't
understand wrong) and it works really fine, I just modified a bit its
logback configuration so that all 4 loggers refer to only 1 appender;
for my application I'm using a simple configuration that outputs to a file,
uses a size and time based rolling policy:

<configuration scan="true" scanPeriod="30 seconds" >
    <appender name="MYAPP-TRIAL"
class="ch.qos.logback.core.rolling.RollingFileAppender">
 <file>C:/Users/r0h1/workspace/TestLoggingFrameworks/logs/myapp.log</file>
 <append>true</append>
<encoder>
 <charset>utf-8</charset>
<pattern>MYAPPLICATION TRIAL %d{HH:mm:ss.SSS} %-5level {%thread}
[%logger{40}] : %msg%n</pattern>
 </encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<fileNamePattern>C:/Users/r0h1/workspace/TestLoggingFrameworks/logs/myapp-%d{yyyyMMdd}-%i.log.zip</fileNamePattern>
 <maxHistory>60<!-- days --></maxHistory>
 <timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
 <maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
 </rollingPolicy>
</appender>
  <root level="info">
    <appender-ref ref="MYAPP-TRIAL" />
  </root>
</configuration>

Now I know there are 2 different approaches
1 - using prudent: but i can't use it because of its limitation with the
rolling policy (in fact it doesn't work at all with this configuration)
2 - using <include> tag importing the appender from tomcat/conf/logback.xml
(I followed logback manual, referencing the appender and so on). This
approach doesn't work either, I think because the class used in the
tomcat/conf/logback.xml is not logback's classic one:

<included>
      <appender name="MYAPPTEST" class="
org.apache.juli.logging.ch.qos.logback.core.rolling.RollingFileAppender">
 <file>C:/Users/r0h1/workspace/TestLoggingFrameworks/logs/myapp.log</file>
 <encoder>
<charset>utf-8</charset>
 <pattern>%d{HH:mm:ss.SSS} %logger{0} {%thread} %level : %msg%n</pattern>
 </encoder>
<rollingPolicy
class="org.apache.juli.logging.ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<fileNamePattern>C:/Users/r0h1/workspace/TestLoggingFrameworks/logs/myapp-%d{yyyyMMdd}-%i.log.zip</fileNamePattern>
 <maxHistory>60<!-- days --></maxHistory>
 <timeBasedFileNamingAndTriggeringPolicy
class="org.apache.juli.logging.ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
 <maxFileSize>20MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
 </rollingPolicy>
</appender>
</included>

Someone got another approach to suggest? or am I making something wrong
here?

I'm using tomcat x64 7.0.22,  logback 1.0.0, Win7 x64

Thanks a lot!

Rohi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.qos.ch/pipermail/logback-user/attachments/20111123/2226bdce/attachment.html>


More information about the Logback-user mailing list