No, I guess that would work.  It just seems to be needlessly complicated and
resource intensive.  You normally don't consider a program crashing as
normal behavior.  The point of a monitoring application is for it to NEVER
crash, and continually check some other application.

Think about it....cron launches your program to see if Tomcat is started.
Well, Tomcat isn't.  That's a given, considering that the JVM just crashed.
A circle.  See?  Your application is Tomcat, not the JVM.  

My point is that if you can successfully retrieve output from Tomcat,
generated by either a servlet or a JSP, all is well.  Tomcat is happy, the
JVM is happy, all is well.  If you can't, something is wrong, and you have
to restart anyway.  Seems simpler to me, but I guess there will always be
different ways to do things.

Heck, if this happens alot, you'd probably just be better off profiling your
application, finding out WHY it happens (maybe something could be rewritten
or re-architected to avoid triggering those bugs), and possibly just
determining that a restart every other day or something is sufficient.  In
that case, just set up a cron job to run at 4 AM your time 3 times a week
that restarts Tomcat, without even bothering to check status.

The typcial goal for a monitoring application is to alert you that something
is wrong...not to treat something that goes wrong as a normal event.

John

> -----Original Message-----
> From: Ayhan Peker [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, February 25, 2003 12:06 PM
> To: Tomcat Users List
> Subject: RE: crontab problems
> 
> 
> Am I right to think that if jvm crashes...Once writing to 
> core file is 
> finished, jvm can be restarted..(that is what we have been doing--jvm 
> crashes, of course tomcat too)
> AND crontab say 5 min later..launches this java programme, which will 
> restart tomcat..this is not a thread..just a java 
> programme...that is the 
> reason I am trying to launch it from crontab...
> 
> When jvm crashes it writes its report..and goes away from the 
> memory..You 
> can still launch a java programme after this crash (like 
> launching tomcat 
> again after the crash)..
> 
> ..
> 
> --tomcat running
> --jvm crashes..
> --crontab launches my watcher (written in java)
> --my application checks if tomcat is running...and restarts 
> is necessary..
> --if my programme is running at the time of crash..my 
> programme crashes 
> too...but 5 min later my programme is activated by crontab again..
> 
> 
> Am I missing something here?
> 
> Take care..
> 
> Ayhan
> 
> 
> 
> At 10:12 AM 2/25/03 -0500, you wrote:
> 
> >Well, if the JVM is "crashed", how can a program or 
> application written in
> >Java help you manage Tomcat?  That was the point.
> >
> >John
> >
> > > -----Original Message-----
> > > From: Ayhan Peker [mailto:[EMAIL PROTECTED]
> > > Sent: Tuesday, February 25, 2003 9:43 AM
> > > To: Tomcat Users List
> > > Subject: RE: crontab problems
> > >
> > >
> > > I have no problems with tomcat...
> > >
> > > But sometimes under heavy load jvm 1.4 crashes...
> > > see the links:
> > >
> > > Ok this is the bug:
> > > 
> http://developer.java.sun.com/developer/bugParade/bugs/4779653.html
> > > unfortunately it is closed, affects 1.4.1 and will not
> > > apparently be fixed.
> > > It oiccurs in large apps under load.on Linux and Solaris (
> > > and most likely
> > > Windows )
> > > It is related to / a copy of the following bug which
> > > 
> http://developer.java.sun.com/developer/bugParade/bugs/4724356.html
> > >
> > >
> > >
> > >
> > > what is the best suggestion?
> > >
> > > just trying to determine if tomcat is running..
> > > if not i will restart it ..
> > > (jvm just crashed last saturday night....I did not know
> > > anything until the
> > > sunday evening)..
> > >
> > >
> > > At 09:29 AM 2/25/03 -0500, you wrote:
> > >
> > > >Yes, Tomcat is generally very stable.  But: Trust, but verify. ;)
> > > >
> > > >John
> > > >
> > > > > -----Original Message-----
> > > > > From: Hannes Schmidt [mailto:[EMAIL PROTECTED]
> > > > > Sent: Tuesday, February 25, 2003 9:23 AM
> > > > > To: Tomcat Users List
> > > > > Subject: Re: crontab problems
> > > > >
> > > > >
> > > > > Yes, using wget is probably the second best solution. The
> > > > > best one is to
> > > > > find the reason why Tomcat crashes at all, since it generally
> > > > > is a stable
> > > > > and reliable product.
> > > > >
> > > > > Cron doesn't execute more than once a minute (at least mine
> > > > > doesn't) which
> > > > > still is quite often. 5 or 10 minutes would be ok too. But
> > > > > that's a matter
> > > > > of taste, really.
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Turner, John" <[EMAIL PROTECTED]>
> > > > > To: "'Tomcat Users List'" <[EMAIL PROTECTED]>
> > > > > Sent: Tuesday, February 25, 2003 3:00 PM
> > > > > Subject: RE: crontab problems
> > > > >
> > > > >
> > > > > >
> > > > > > Agreed...using a Java program to watch Tomcat seems a
> > > > > little circular.
> > > > > > Plus, I don't see any sort of delay or "sleep" in the
> > > poster's JAva
> > > > > > code...it looks like it just keeps hammering at Tomcat, as
> > > > > the cron job is
> > > > > > "* * * * *".  Creating all those Runtime objects over and
> > > > > over can't be
> > > > > > helping performance any.
> > > > > >
> > > > > > A simple shell script using wget would be fine...sure, you
> > > > > can watch the
> > > > > > output of "ps -ef", but that doesn't tell you if Tomcat
> > > is accepting
> > > > > > requests or not.  There could be an entry for Tomcat in the
> > > > > process table,
> > > > > > but Tomcat could be refusing requests.
> > > > > >
> > > > > > I just write a simple JSP page that outputs the contents of
> > > > > a variable,
> > > > > like
> > > > > > "***SUCCESS***" or something like that, then use wget to
> > > > > grab that page
> > > > > > every so often and check for the string in the output...if
> > > > > it's there,
> > > > > > things should be OK (there are no guarantees).  If it's
> > > > > not, you have a
> > > > > > problem.  This way, the JSP page is compiled and cached by
> > > > > Tomcat, it uses
> > > > > > very little memory, and doesn't bog down the server.
> > > > > >
> > > > > > There are plenty of other alternatives much more robust
> > > > > than a simple
> > > > > shell
> > > > > > script...you could use Netsaint/Nagios, Big Brother, and a
> > > > > whole bunch of
> > > > > > others.
> > > > > >
> > > > > > John
> > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Hannes Schmidt 
> [mailto:[EMAIL PROTECTED]
> > > > > > > Sent: Tuesday, February 25, 2003 6:29 AM
> > > > > > > To: Tomcat Users List
> > > > > > > Subject: Re: crontab problems
> > > > > > >
> > > > > > >
> > > > > > > Right, you might also just put
> > > > > > >
> > > > > > > JAVA_HOME=...
> > > > > > >
> > > > > > > at the beginning of your crontab.
> > > > > > >
> > > > > > > I assume you have good reasons to use a Java program to
> > > > > watch Tomcat.
> > > > > > > Personally, I would have written a shell script. If you
> > > > > > > really want to use
> > > > > > > Java, you might want to use a different, more reliable
> > > > > > > approach to detect
> > > > > > > (un)availability of Tomcat, something like
> > > > > > >
> > > > > > > import java.net.*;
> > > > > > > URL url = new URL( "http://localhost:8080/examples"; );
> > > > > > > URLConnection con = url.openConnection();
> > > > > > > con.setUseCaches( false );
> > > > > > > con.connect();
> > > > > > > if( con.getContentLength() > 0 ) {
> > > > > > >     // restart tomcat
> > > > > > > }
> > > > > > >
> > > > > > > But I just wrote this out of my head ...
> > > > > > >
> > > > > > > ----- Original Message -----
> > > > > > > From: "Ralph Einfeldt" <[EMAIL PROTECTED]>
> > > > > > > To: "Tomcat Users List" <[EMAIL PROTECTED]>
> > > > > > > Sent: Tuesday, February 25, 2003 10:43 AM
> > > > > > > Subject: RE: crontab problems
> > > > > > >
> > > > > > >
> > > > > > > You have to make shure that your script retstart_tomcat
> > > > > > > sets and exports all needed environment variables before
> > > > > > > calling ./startup.sh:
> > > > > > >
> > > > > > > JAVA_HOME=/usr/local/java/jdk1.3.1
> > > > > > > CATALINA_HOME=<path to tomcat installation>
> > > > > > > CATALINA_BASE=<path to tomcat instance> or $CATALINA_HOME
> > > > > > > # JAVA_OPTS='-client -v'
> > > > > > >
> > > > > > > export JAVA_HOME CATALINA_HOME CATALINA_BASE JAVA_OPTS
> > > > > > > ./startup.sh
> > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: Ayhan Peker [mailto:[EMAIL PROTECTED]
> > > > > > > > Sent: Tuesday, February 25, 2003 10:30 AM
> > > > > > > > To: [EMAIL PROTECTED]
> > > > > > > > Subject: crontab problems
> > > > > > > >
> > > > > > > > but the last two lines returns
> > > > > > > > /////////////////////////
> > > > > > > > The JAVA_HOME environment variable is not defined
> > > > > > > > message..
> > > > > > > > /////////////////////////
> > > > > > > > my retstart_tomcat scrip is
> > > > > > > > #!/bin/sh
> > > > > > > > cd /usr/local/tomcat/bin
> > > > > > > > ./startup.sh
> > > > > > >
> > > > > > >
> > > > >
> > > 
> ---------------------------------------------------------------------
> > > > > > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > > > > > For additional commands, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > >
> > > 
> ---------------------------------------------------------------------
> > > > > > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > > > > > For additional commands, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > 
> ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > > > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > 
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: 
> [EMAIL PROTECTED]
> > > > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > > > >
> > > >
> > > 
> >---------------------------------------------------------------------
> > > >To unsubscribe, e-mail: 
> [EMAIL PROTECTED]
> > > >For additional commands, e-mail: 
> [EMAIL PROTECTED]
> > >
> > >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to