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]
