[logback-user] Separating the logging-output of libraries in tomcat/shared

Ceki Gülcü ceki at qos.ch
Fri Mar 5 09:48:55 CET 2010


1) You can only have *one *nested-appender within SiftingAppender.

To manage *two* nested appender families, create *two* sifted appenders.

2) <FileNamePattern>tbank-${contextName}.%d{yyyy-MM-dd}.log.zip looks
suspicious, it should probably be
<File>${catalina.home}/logs/tbank/tbank-${contextName}.d{yyyy-MM-dd}.log.zip</File>

3) Since you are going to share the same configuration file between
all contexts, you should override the JNDIContextSelector convention
and explicitly define the "logback/configuration-resource" to point to
the same file.  Include the following in each web.xml. The path to the
logback should be the same (shared).

<env-entry>
   <env-entry-name>logback/configuration-resource</env-entry-name>
   <env-entry-type>java.lang.String</env-entry-type>
   <env-entry-value>c:/my_shared_logback_config.xml</env-entry-value>
</env-entry>

Alternatively you could follow the convention and have different
logback configuration files with identical contents (which is rather
silly in this case).

I hope this helps,

On 05/03/2010 9:32 AM, toxel wrote:
>
> I read in manual (http://logback.qos.ch/manual/loggingSeparation.html) that :
> "
> Assuming you have enabled ContextJNDISelector, logging for Kenobi will be
> done using a logger context named "kenobi". Moreover, the "kenobi" logger
> context will be initialized by convention using the configuration file
> called logback-kenobi.xml which should be packaged within Kenobi
> web-application under the WEB-INF/classes folder.
> "
>
> And 2nd question:
> can I use next configuration for SIFT appender - with two underlying
> appenders
>
> 	<appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
> 		<discriminator
> 			class="utils.common.logging.JNDIBasedContextDiscriminator">
> 			<DefaultValue>unknown</DefaultValue>
> 		</discriminator>
> 		<sift>
> 			<appender name="logfile-${contextName}"
> 				class="ch.qos.logback.core.rolling.RollingFileAppender">
> 				<File>${catalina.home}/logs/tbank/tbank-${contextName}.log</File>
> 				<rollingPolicy
> class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
> 					<FileNamePattern>tbank-${contextName}.%d{yyyy-MM-dd}.log.zip
> 					</FileNamePattern>
> 					<MaxHistory>60</MaxHistory>
> 				</rollingPolicy>
> 				<layout class="ch.qos.logback.classic.PatternLayout">
> 					<Pattern>%d [%thread] %-5level %logger{35} - %msg%n
> 			</Pattern>
> 				</layout>
> 				<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
> 					<level>DEBUG</level>
> 				</filter>
> 				<Encoding>utf-8</Encoding>
> 			</appender>
>
> 			<appender name="errfile-${contextName}"
> 				class="ch.qos.logback.core.rolling.RollingFileAppender">
> 				<File>${catalina.home}/logs/tbank/tbank-${contextName}-error.log
> 				</File>
> 				<rollingPolicy
> class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
> 					<FileNamePattern>tbank-${contextName}-error.%d{yyyy-MM-dd}.log.zip
> 					</FileNamePattern>
> 					<MaxHistory>60</MaxHistory>
> 				</rollingPolicy>
>
> 				<layout class="ch.qos.logback.classic.PatternLayout">
> 					<Pattern>%d [%thread] %-5level %logger{35} - %msg%n
> 			</Pattern>
> 				</layout>
> 				<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
> 					<level>WARN</level>
> 				</filter>
> 				<Encoding>utf-8</Encoding>
> 			</appender>
> 		</sift>
> 	</appender>
>
>


More information about the Logback-user mailing list