--- loncom/loncron 2004/05/11 20:19:46 1.48
+++ loncom/loncron 2004/05/11 21:08:55 1.49
@@ -2,7 +2,7 @@
# Housekeeping program, started by cron, loncontrol and loncron.pl
#
-# $Id: loncron,v 1.48 2004/05/11 20:19:46 albertel Exp $
+# $Id: loncron,v 1.49 2004/05/11 21:08:55 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -36,6 +36,7 @@ use LONCAPA::Configuration;
use IO::File;
use IO::Socket;
use HTML::Entities;
+use Getopt::Long;
#globals
use vars qw (%perlvar %simplestatus $errors $warnings $notices $totalcount);
@@ -450,22 +451,27 @@ sub test_connections {
&log($fh,'
Connections
');
print "testing connections\n";
&log($fh,"");
+ my ($good,$bad)=(0,0);
foreach my $tryserver (sort(keys(%{$hostname}))) {
print(".");
my $result;
my $answer=reply("pong",$tryserver);
if ($answer eq "$tryserver:$perlvar{'lonHostID'}") {
$result="ok";
+ $good++;
} else {
$result=$answer;
$warnings++;
- if ($answer eq 'con_lost') { $warnings++; }
+ if ($answer eq 'con_lost') {
+ $bad++;
+ $warnings++;
+ }
}
if ($answer =~ /con_lost/) { print(" $tryserver down\n"); }
&log($fh,"$tryserver | $result |
\n");
}
&log($fh,"
");
-
+ print "\n$good good, $bad bad connections\n";
&errout($fh);
}
@@ -545,8 +551,36 @@ sub send_mail {
system("metasend -b -t $emailto -s '$subj' -f $statusdir/index.html -m text/html");
}
+sub usage {
+ print(< \$help,
+ "oldlonc" => \$oldlonc,
+ "justcheckdaemons" => \$justcheckdaemons,
+ "noemail" => \$noemail,
+ "justcheckconnections" => \$justcheckconnections
+ );
+ if ($help) { &usage(); return; }
# --------------------------------- Read loncapa_apache.conf and loncapa.conf
my $perlvarref=LONCAPA::Configuration::read_conf('loncapa.conf');
%perlvar=%{$perlvarref};
@@ -584,7 +618,7 @@ sub main () {
my (%hostname,%hostdom,%hostrole,%spareid);
while (my $configline=<$config>) {
- next if ($configline =~ /^(\#|\s*$)/);
+ next if ($configline =~ /^(\#|\s*\$)/);
my ($id,$domain,$role,$name,$ip,$domdescr)=split(/:/,$configline);
if ($id && $domain && $role && $name && $ip) {
$hostname{$id}=$name;
@@ -611,25 +645,33 @@ sub main () {
$warnings=0;
$notices=0;
- my $fh=&start_logging(\%hostdom,\%hostrole,\%hostname,\%spareid);
-
- &log_machine_info($fh);
- &clean_tmp($fh);
- &clean_lonIDs($fh);
- &check_httpd_logs($fh);
- &rotate_lonnet_logs($fh);
- &checkon_daemon($fh,'lonsql',200000);
- &checkon_daemon($fh,'lond',40000,1);
- &checkon_daemon($fh,'lonc',40000,1);
- &checkon_daemon($fh,'lonhttpd',40000);
-
- &test_connections($fh,\%hostname);
- &check_delayed_msg($fh);
-
- &finish_logging($fh);
- &log_simplestatus();
- if ($totalcount>200) { &send_mail(); }
+ my $fh;
+ if (!$justcheckdaemons && !$justcheckconnections) {
+ $fh=&start_logging(\%hostdom,\%hostrole,\%hostname,\%spareid);
+
+ &log_machine_info($fh);
+ &clean_tmp($fh);
+ &clean_lonIDs($fh);
+ &check_httpd_logs($fh);
+ &rotate_lonnet_logs($fh);
+ }
+ if (!$justcheckconnections) {
+ &checkon_daemon($fh,'lonsql',200000);
+ &checkon_daemon($fh,'lond',40000,1);
+ &checkon_daemon($fh,'lonc',40000,1);
+ &checkon_daemon($fh,'lonhttpd',40000);
+ }
+ if (!$justcheckdaemons) {
+ &test_connections($fh,\%hostname);
+ }
+ if (!$justcheckdaemons && !$justcheckconnections) {
+ &check_delayed_msg($fh);
+ &finish_logging($fh);
+ &log_simplestatus();
+
+ if ($totalcount>200 && !$noemail) { &send_mail(); }
+ }
}
&main();
500 Internal Server Error
Internal Server Error
The server encountered an internal error or
misconfiguration and was unable to complete
your request.
Please contact the server administrator at
root@localhost to inform them of the time this error occurred,
and the actions you performed just before this error.
More information about this error may be available
in the server error log.