[prev in list] [next in list] [prev in thread] [next in thread] 

List:       log4j-user
Subject:    RE: Re[5]: stopping logging after removing context in Tomcat prob
From:       Swami Iyer <SIyer () descartes ! com>
Date:       2002-06-26 17:08:06
[Download RAW message or body]

Jake,
If the shutdown did not work for you, then it could be because there is an
instance of log4j class object residing in the JVM.

I think it is because the FileWatchdog extends thread instead of
implementing the Runnable. When a class extends Thread and if the class
members or used then the JVM will hold on to that instance of class object
(thinking it is a thread and will be started by someone. The GC will it
clean it....don't know). If you run the profiler or optimize it you would be
able to note a thread hanging around and hence you are not able to remove
the log4j.jar. The solution is to rewrite the FileWatchdog and the
PropertyConfigurator. I am not using 1.2.x so I don't know whether the same
code issue still exists.

Hope this helps.

Swami

> -----Original Message-----
> From: Jacob Kjome [mailto:hoju@visi.com]
> Sent: June 26, 2002 1:01 PM
> To: Log4J Users List
> Subject: Re[5]: stopping logging after removing context in Tomcat prob
> lem...
> 
> 
> Hello Ceki,
> 
> I created a ServletContextListener and can now successfully call
> LogManager.shutdown() at context shutdown.  The Javadoc 
> doesn't have much to say about
> this method.  What exactly does it shut down because the 
> Log4j jar file is still
> reported as a being in use so my ant "clean" target fails since it
> can't delete the log4j jar???
> 
> Jake
> 
> 
> Tuesday, June 25, 2002, 4:32:44 PM, you wrote:
> 
> 
> 
> CG> I don't know if this relevant or correct but it seems to 
> me that Tomcat
> CG> contexts have to be reloadable and crossContext. As in:
> 
> CG>    <Context path="/xyz" docBase="xyz" debug="0" reloadable="true"
> CG>                                crossContext="true">
> 
> CG> This is in the file conf/server.xml.
> 
> CG> Hope this helps,
> 
> CG> At 16:05 25.06.2002 -0500, you wrote:
> >>Hello Swami,
> >>
> >>Thanks for the info.
> >>
> >>I tried adding LogManager.shutdown() to my Log4jInit servlet's
> >>destroy() method, but it seems as if not all servlets are 
> guaranteed to 
> >>have their
> >>destroy() method called.  What I saw in the Tomcat logs was 
> that only
> >>servlets that were called via their doGet or doPost methods 
> have their
> >>destroy methods called.  My Log4jInit servlet which gets run at
> >>context startup (via an entry in the web.xml) never had its 
> destroy method 
> >>called even though it was
> >>initialized.
> >>
> >>Looks like I'll have to write a ServletContextListener or something.
> >>
> >>Jake
> >>
> >>Tuesday, June 25, 2002, 2:45:55 PM, you wrote:
> >>
> >>SI> I think there is a LogManager.shutdown().
> >>
> >>SI> Swami
> >>
> >> >> -----Original Message-----
> >> >> From: Jacob Kjome [mailto:hoju@visi.com]
> >> >> Sent: June 25, 2002 3:40 PM
> >> >> To: Log4J Users List
> >> >> Subject: Re[2]: stopping logging after removing context 
> in Tomcat
> >> >> problem...
> >> >>
> >> >>
> >> >> Hello Swami,
> >> >>
> >> >> That sounds good.  Can you expand on how I would do a
> >> >> "log4j.shutdown"?  I'm not sure where to look.  I've never seen
> >> >> mention of this in the FAQ or the docs and don't know 
> where to look in
> >> >> the API for this.  If you can point me in the right 
> direction, that
> >> >> would be excellent!
> >> >>
> >> >> thanks,
> >> >>
> >> >> Jake
> >> >>
> >> >> Tuesday, June 25, 2002, 1:53:41 PM, you wrote:
> >> >>
> >> >> SI> Try catching the deploy in the destroy of the 
> servlet and do the
> >> >> SI> log4j.shutdown. This would release the resource held by
> >> >> this jar file and
> >> >> SI> you would be able to perform your operation.
> >> >>
> >> >> SI> Swami
> >> >>
> >> >> >> -----Original Message-----
> >> >> >> From: Jacob Kjome [mailto:hoju@visi.com]
> >> >> >> Sent: June 25, 2002 2:47 PM
> >> >> >> To: Log4J Users List
> >> >> >> Subject: stopping logging after removing context in Tomcat
> >> >> problem...
> >> >> >>
> >> >> >>
> >> >> >> Hi,
> >> >> >>
> >> >> >> I'm not sure if this is an issue I should be 
> bringing up here or on
> >> >> >> the Tomcat-user list, but here goes...
> >> >> >>
> >> >> >> I am using Tomcat-4.1.3 and taking advantage of the 
> new Ant tasks
> >> >> >> which hook up to Tomcat's manager app to dynamically 
> install and
> >> >> >> remove applications.  This works great and log4j 
> initializes just
> >> >> >> fine.  I am using the FileAppender with
> >> >> configureAndWatch().  Logging
> >> >> >> works just fine.
> >> >> >>
> >> >> >> However, when I remove the app, Tomcat seems to unload all
> >> >> resources
> >> >> >> except for log4j-1.2.4.jar because when I attempt an 
> "ant clean",
> >> >> >> which deletes my "build" directory, it fails saying that
> >> >> the resource
> >> >> >> log4j-1.2.4.jar is still in use.
> >> >> >>
> >> >> >> So, is this an issue that someone here can explain 
> or should I take
> >> >> >> this up with the Tomcat-user list?
> >> >> >>
> >> >> >> Thanks,
> >> >> >>
> >> >> >> Jake
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> Best regards,
> >> >> >>  Jacob                          mailto:hoju@visi.com
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> To unsubscribe, e-mail:
> >> >> SI> <mailto:log4j-user-unsubscribe@jakarta.apache.org>
> >> >> SI> For additional commands, e-mail:
> >>SI> <mailto:log4j-user-help@jakarta.apache.org>
> >>
> >>SI>> --
> >>SI>> To unsubscribe, e-mail:
> >>SI> <mailto:log4j-user-unsubscribe@jakarta.apache.org>
> >>SI>> For additional commands, e-mail:
> >>SI> <mailto:log4j-user-help@jakarta.apache.org>
> >>
> >>
> >>
> >>
> >>
> >>
> >>--
> >>Best regards,
> >>  Jacob                            mailto:hoju@visi.com
> >>
> >>
> >>--
> >>To unsubscribe, e-mail:   
> <mailto:log4j-user-unsubscribe@jakarta.apache.org>
> >>For additional commands, e-mail: 
> <mailto:log4j-user-help@jakarta.apache.org>
> 
> CG> --
> CG> Ceki
> 
> 
> CG> --
> CG> To unsubscribe, e-mail:   
> <mailto:log4j-user-unsubscribe@jakarta.apache.org>
> CG> For additional commands, e-mail: 
> <mailto:log4j-user-help@jakarta.apache.org>
> 
> 
> 
> -- 
> Best regards,
>  Jacob                            mailto:hoju@visi.com
> 
> 
> --
> To unsubscribe, e-mail:   
> <mailto:log4j-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: 
> <mailto:log4j-user-help@jakarta.apache.org>
> 

--
To unsubscribe, e-mail:   <mailto:log4j-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:log4j-user-help@jakarta.apache.org>

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic