Re: logging with multiple web applications

2008-06-17 Thread Jamie

That will be Tomcat version 6.0

Caldarale, Charles R wrote:

From: Jamie [mailto:[EMAIL PROTECTED]
Subject: logging with multiple web applications

Does anyone know how to configure Tomcat such that logging writes to
separate log files for each web application?



Care to tell anyone what version of Tomcat you're using?

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

  



--
Stimulus Software - MailArchiva
Email Archiving And Compliance
USA Tel: +1-713-366-8072 ext 3
UK Tel: +44-20-80991035 ext 3
Email: [EMAIL PROTECTED]
Web: http://www.mailarchiva.com




-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: logging with multiple web applications

2008-06-17 Thread André Warnier



Jamie wrote:

That will be Tomcat version 6.0

Caldarale, Charles R wrote:

From: Jamie [mailto:[EMAIL PROTECTED]
Subject: logging with multiple web applications

Does anyone know how to configure Tomcat such that logging writes to
separate log files for each web application?



Care to tell anyone what version of Tomcat you're using?



Now Jamie, just a word of caution : this guy Chuck sounds like he's nice 
and wants to help, but don't get your hopes up, cause the next time he 
might just tell you to go read the log4j documentation..

;-)

Ok, cheap shot.
But just to say that I'm listening too, just in case the answer would 
help me understand how it works, and reduce my daily Tomcat logs to 
monthly ones.


André


-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: logging with multiple web applications

2008-06-17 Thread Caldarale, Charles R
 From: André Warnier [mailto:[EMAIL PROTECTED]
 Subject: Re: logging with multiple web applications

 Now Jamie, just a word of caution : this guy Chuck sounds
 like he's nice and wants to help, but don't get your hopes
 up, cause the next time he might just tell you to go read
 the log4j documentation..

Actually, the OP appears to have done that, unlike some...

The real question is, has the OP read this:
http://tomcat.apache.org/tomcat-6.0-doc/logging.html

(My guess is that actually has been done as well.)  Note that most of the log4j 
section in the above applies to Tomcat internal logging, not individual webapp 
logging, except where noted.

 Apparently, Tomcat uses an extended the log4j package (JULI)
 to support logging across multiple web applications

No, JULI is not log4j; JULI is a more flexible replacement for the somewhat 
restrictive JDK logging mechanism.  Internally, Tomcat uses commons-logging, 
but webapps are free to use whatever they please.

 each web application has its own log4j.properties file

Look for any more global instances of log4j.properties (or log4j.xml) and get 
rid of them.

 The jar log4j-1.2.14.jar is bundled with the web application
 and is located in WEB-INF/lib

Verify that you don't have any instances of a log4j*.jar in Tomcat's lib 
directory and that you have no CLASSPATH environment variable set.

 Do I need to import catalina's version of log4j?

No, especially since Tomcat doesn't use log4j, unless you modify it to do so.

 log4j.appender.archivadebug.File=${catalina.home}/logs/debug.log

I'd suggest changing all config lines that refer to debug.log to something 
unique for each webapp.

Have you placed any jars in Tomcat's lib directory that are shared across 
webapps?  If so, and if they are doing any logging, it will use the log4j 
config of the first webapp to get there.  Better to deploy such libraries with 
each webapp rather than introduce such crosstalk.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: logging with multiple web applications

2008-06-17 Thread Caldarale, Charles R
 From: Jamie [mailto:[EMAIL PROTECTED]
 Subject: Re: logging with multiple web applications

 Ok. I currently have the log4j-1.2.14.jar file in the WEB-INF/lib
 directory. I will remove it.

No, that's where it's supposed to be; one copy for each webapp.  I was 
referring to Tomcat's lib directory, not each webapp's.

 I do have shared JARs and class files across web apps.

That is most likely the source of your problem.

 This is a strongly desired feature as the intention is to
 minimize the memory footprint of each web app.

Unless you have many thousands of shared classes, your concern is probably 
unfounded.  By introducing such run-time dependencies, you pretty much 
guarantee that you have to take the whole server down to update a single 
webapp, and created versioning hell when you need to update a shared library 
for one particular webapp but not the others.  Memory is cheap; don't be afraid 
of configuring a larger PermGen when needed.

 Is there a way to use shared libs/classes and
 have the logging output separate?

Yes, but it's ugly: each caller of a method in a shared class must pass in a 
reference to the webapp's logger, rather than letting the shared class have its 
own.  You really don't want to do that, since it complicates and obfuscates the 
interface.  Just stop sharing your classes.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: logging with multiple web applications

2008-06-17 Thread David Fisher

Hi Chuck,

These threads have clarified things for me as well. Thanks.


From: Jamie [mailto:[EMAIL PROTECTED]
Subject: Re: logging with multiple web applications

Ok. I currently have the log4j-1.2.14.jar file in the WEB-INF/lib
directory. I will remove it.


No, that's where it's supposed to be; one copy for each webapp.  I  
was referring to Tomcat's lib directory, not each webapp's.



I do have shared JARs and class files across web apps.


That is most likely the source of your problem.


This is a strongly desired feature as the intention is to
minimize the memory footprint of each web app.


Unless you have many thousands of shared classes, your concern is  
probably unfounded.  By introducing such run-time dependencies, you  
pretty much guarantee that you have to take the whole server down  
to update a single webapp, and created versioning hell when you  
need to update a shared library for one particular webapp but not  
the others.  Memory is cheap; don't be afraid of configuring a  
larger PermGen when needed.


Yes, this where I am. Memory is not cheap when you are running old  
hardware w/o option to replace and have your own webapps large area.  
But you are correct about tomcat's reasonable approach to the  
problem. I'll need to do containers as singletons. If a webapps is  
too PermGen intensive with 4000 clases, etc. maybe it needs its own  
isolation.



Is there a way to use shared libs/classes and
have the logging output separate?


Yes, but it's ugly: each caller of a method in a shared class must  
pass in a reference to the webapp's logger, rather than letting the  
shared class have its own.  You really don't want to do that, since  
it complicates and obfuscates the interface.  Just stop sharing  
your classes.


Once I put apache in front I can.

I'm not replying in the related classloader thread, but that is  
helpful as well in thinking about going from 5.5.25 to 6.


As always - illuminating.

Regards,
Dave



 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE  
PROPRIETARY MATERIAL and is thus for use only by the intended  
recipient. If you received this in error, please contact the sender  
and delete the e-mail and its attachments from all computers.


-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]