Diff for /loncom/cgi/clusterstatus.pl between versions 1.19 and 1.23

version 1.19, 2003/08/20 01:34:25 version 1.23, 2003/09/14 19:00:03
Line 1 Line 1
 #!/usr/bin/perl  #!/usr/bin/perl
 $|=1;  $|=1;
 # The LearningOnline Network with CAPA  # Generates a html page showing various sataus reports about the cluster
 # Cluster Status  
 #  
 # $Id$  # $Id$
   #
   # Copyright Michigan State University Board of Trustees
   #
   # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
   #
   # LON-CAPA is free software; you can redistribute it and/or modify
   # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
   #
   # LON-CAPA is distributed in the hope that it will be useful,
   # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
   #
   
 use lib '/home/httpd/lib/perl/';  use lib '/home/httpd/lib/perl/';
 use LONCAPA::Configuration;  use LONCAPA::Configuration;
Line 221  sub announcement { Line 242  sub announcement {
     print &otherwindow($local,'/announcement.txt','Announcement');      print &otherwindow($local,'/announcement.txt','Announcement');
 }  }
   
   sub takeonline {
       my $local=shift;
       print &otherwindow($local,'/cgi-bin/takeonline.pl','Take online');
   }
   
   sub takeoffline {
       my $local=shift;
       print &otherwindow($local,'/cgi-bin/takeoffline.pl','Take offline');
   }
   
   sub reroute {
       my ($local,$remote)=@_;
       print &otherwindow($local,'/cgi-bin/takeoffline.pl?'.
          $hostname{$remote}.'&'.$hostdom{$local}
          ,$remote)."\n";
   }
   
   sub allreroutes {
       my $local=shift;
       &takeoffline($local);
       print ' Reroute to: <font size="1">';
       foreach my $remote (sort keys %hostname) {
    unless ($local eq $remote) {
       &reroute($local,$remote);
    }
       }
       print '</font>';
   }
   
 # ========================================================= Produce a green bar  # ========================================================= Produce a green bar
 sub bar {  sub bar {
     my $parm=shift;      my $parm=shift;
Line 253  ENDHEADER Line 303  ENDHEADER
  print ("<tr><td bgcolor='#DDBBBB'><font color='#552222' size='+2'>$trouble</font></td></tr>");   print ("<tr><td bgcolor='#DDBBBB'><font color='#552222' size='+2'>$trouble</font></td></tr>");
     }      }
     print "<tr><td bgcolor='#BBBBBB'>";      print "<tr><td bgcolor='#BBBBBB'>";
   # re-routing
       if ($host{$local.'_reroute'}) {
    print "<br />Reroute: ".$host{$local.'_reroute'};
    &takeonline($local);
       }
 # version  # version
     if ($host{$local.'_version'}) {      if ($host{$local.'_version'}) {
  print "<br />Version: ".$host{$local.'_version'}   print "<br />Version: ".$host{$local.'_version'}
Line 287  ENDHEADER Line 342  ENDHEADER
     if ($host{$local.'_errors'}) {      if ($host{$local.'_errors'}) {
  print "<br />loncron errors: ".$host{$local.'_errors'};   print "<br />loncron errors: ".$host{$local.'_errors'};
     }      }
       print "</td></tr><tr><td bgcolor='#DDDDDD'>";
       &allreroutes($local);
     print "</td></tr></table><br />";      print "</td></tr></table><br />";
 }  }
   
Line 372  foreach my $local (sort keys %hostname) Line 429  foreach my $local (sort keys %hostname)
  }   }
  $host{$local.'_load'}=$userstatus{'loadavg'};   $host{$local.'_load'}=$userstatus{'loadavg'};
     }      }
   # -- Check reroute status
       &statuslist($local,'Reroute');
       my %reroute=&replyhash($local,'/lon-status/reroute.txt',1800);
       if ($reroute{'status'} eq 'rerouting') {
    if ($reroute{'server'}) {
       $host{$local.'_reroute'}=
    'Rerouting to <tt>'.$reroute{'server'}.
                      '</tt>, domain: '.$reroute{'domain'}.
    ' (since '.localtime($reroute{'time'}).')';
    } else {
       $host{$local.'_reroute'}='offline';
    }
       }
 # -- Check mysql status  # -- Check mysql status
     &statuslist($local,'Database');      &statuslist($local,'Database');
     my %mysql=&replyhash($local,'/lon-status/mysql.txt',3600);      my %mysql=&replyhash($local,'/lon-status/mysql.txt',3600);
Line 459  sub reports { Line 529  sub reports {
     print       print 
 '<td bgcolor="'.$cellcolor.'"><font color="#225522" face="arial"><b>ok</b></td>';  '<td bgcolor="'.$cellcolor.'"><font color="#225522" face="arial"><b>ok</b></td>';
  } else {   } else {
     my $cellcolor='#DDBBBB';      my $cellcolor='#DDCCAA';
     if ($connectionstatus{$local.'_TO_'.$remote} eq 'local_error') {      if ($connectionstatus{$local.'_TO_'.$remote} eq 'local_error') {
  if ($local eq $remote) {    if ($local eq $remote) { 
     $cellcolor='#DD88AA';       $cellcolor='#DD88AA'; 
Line 467  sub reports { Line 537  sub reports {
     $cellcolor='#DDAACC';      $cellcolor='#DDAACC';
  }   }
     } else {      } else {
  if ($local eq $remote) { $cellcolor='#DD9999'; }   if ($local eq $remote) { $cellcolor='#DDBB77'; }
     }      }
     print       print 
   '<td bgcolor="'.$cellcolor.'"><font color="#552222" size="-2">'.    '<td bgcolor="'.$cellcolor.'"><font color="#552222" size="-2">'.
Line 555  sub reports { Line 625  sub reports {
     if ($host{$local.'_checkrpms_doomed'}>100) {      if ($host{$local.'_checkrpms_doomed'}>100) {
  $trouble='RPMs outdated.<br />';   $trouble='RPMs outdated.<br />';
     }      }
       if ($host{$local.'_reroute'}) {
    $trouble='Rerouting<br >';
       }
     if ($trouble) { $count++; &serverstatus($local,$trouble); }      if ($trouble) { $count++; &serverstatus($local,$trouble); }
  }   }
  unless ($count) { print "No mayor trouble."; }   unless ($count) { print "No mayor trouble."; }

Removed from v.1.19  
changed lines
  Added in v.1.23


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>