[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