I misunderstood Ceki.  I thought that you were simply providing an alternative method of configuration via the separate files.  If instead you mean that I can name the application's logging context that way without having to use ContextJNDISelector, then I'll give it a go and report back my results.

Many thanks.


On 11/03/2011 11:58 AM, ceki wrote:
On 03/11/2011 7:39 PM, Scott Dudley wrote:

There are two applications running under one Tomcat instance and yes,
Tomcat also logs via the same file and configuration.

Yes, I read the link in the error but there was nothing applicable to my
specific configuration/scenario.

Like I said, it does exactly what we want on Linux but log rotation
fails on Windows. If I disable JNDI, log rotation works but then I lose
context identification (application name) which is likewise critical.

Linux is less picky about renaming files with open handles. However,
this does not mean that your log files are not being clobbered under
Linux. You should probably enable prudent mode [1].

It seems that you are ignoring my remarks about setting the context
name within the config file. It's OK as ContextJNDISelector provides
an alternative solution although ContextJNDISelector is an overkill if
you are going to share the same configuration file.

[1] http://logback.qos.ch/manual/appenders.html#prudent


On 11/03/2011 11:06 AM, ceki wrote:
Hi Scott,

I presume you have already read the link provided in the error:

http://logback.qos.ch/codes.html#renamingError

Which applications write to apache-tomcat-6.0.24\logs\debug.log? Does
Tomcat write there too?

Did you know that you can specify the context name in the logback
configuration file? You can also have a configuraion file per
application which than share a configuration file via inclusion.

Here is an example:

For application A:

<configuration>
<statusListener
class="ch.qos.logback.core.status.OnConsoleStatusListener" />
<contextName>appA</contextName>
<include file="c:/foo/shared-logback.xml"/>
</configuration>

For application B:

<configuration>
<statusListener
class="ch.qos.logback.core.status.OnConsoleStatusListener" />
<contextName>appB</contextName>
<include file="c:/foo/shared-logback.xml"/>
</configuration>

shared-logback.xml

<included>
<appender name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.home}/logs/debug.log</file>

<rollingPolicy ....
</appender>

<root level="DEBUG">
<appender-ref ref="FILE" />
</root>
</included>

HTH,

--
Scott Dudley
Senior Developer

Telesoft Corp. | 1661 E. Camelback Rd., Suite 300 | Phoenix, AZ, 85016




--
Scott Dudley
Senior Developer

Telesoft Corp. | 1661 E. Camelback Rd., Suite 300 | Phoenix, AZ, 85016

o: (602) 308-1115 | f: (602) 308-1300 | w: www.telesoft.com

TEM Edge Blog | Twitter | Facebook

Join us at Telesoft Connections 2011. Learn more now!