ホスト監視

3686 ワード

ホスト監視
#     
use URI::Escape;
use LWP::Simple;
use HTML::HeadParser;
use Encode qw/encode decode/;
use Time::HiRes qw(gettimeofday);
use strict;
use Switch;
    #  
    my $cpuvale=2;
    my $diskvale=700;
    my $memoryvale=95;
    my $iovale=800;
    my $powervale="     ";
            
            
    #  
    my $logfile="e:/amos/info.log";
            
            
    #     
    my $var="  ";
    my $title=(split($var,$ARGV[2]))[1];
    #    
    my ($sec,$min,$hour,$day,$mon,$year,$wday,$yday,$isdst) = localtime();  
    $year += 1900;  
    $mon++;
    my $date = "$year-$mon-$day $hour:$min:$sec";  
    print $date, "
"; # my $command="c:\windows\system32\cmd.exe /c e:\amos\mon.pl {targetName} {target} {alarmName} {triggeringSummary} {declaringSummary} {oldStatus} {newStatus}"; # my @OP_PHONE=(15121132075,13817488875,15800329316); #my @OP_PHONE=(15800329316); #system("echo $ARGV[0] $ARGV[1] $ARGV[2] $ARGV[3] $ARGV[4] $ARGV[5] $ARGV[6] $ARGV[7] $date >> $logfile"); sub sendmail { my $val="$_[0]"; my $vale="$_[1]"; if ($val =~ /[0-9].*/) { print "ninao
"; if ( $val > $vale ) { # my $msg="vcenter $ARGV[0] $title\_$vale use:$ARGV[6]
$date"; my $sendmsg=uri_escape($msg); foreach my $phone(@OP_PHONE) { my $msgurl="http://192.168.6.13/fetion.php?phone=$phone&msg=$sendmsg"; get("$msgurl"); # system("echo $phone $ARGV[0] $ARGV[1] $ARGV[2] $ARGV[3] $ARGV[4] $ARGV[5] $ARGV[6] $ARGV[7] $date >> $logfile"); } } } else { print "nishishui?
"; if ( $val =~ $vale ) { # my $msg="vcenter $ARGV[0] $title\_connect state:connected ok!
$date"; my $sendmsg=uri_escape($msg); foreach my $phone(@OP_PHONE) { my $msgurl="http://192.168.6.13/fetion.php?phone=$phone&msg=$sendmsg"; get("$msgurl"); # system("echo $phone $ARGV[0] $ARGV[1] $ARGV[2] $ARGV[3] $ARGV[4] $ARGV[5] $ARGV[6] $ARGV[7] $date >> $logfile"); } } else { # my $msg="vcenter $ARGV[0] $title\_connect state:connected error!
$date"; my $sendmsg=uri_escape($msg); foreach my $phone(@OP_PHONE) { my $msgurl="http://192.168.6.13/fetion.php?phone=$phone&msg=$sendmsg"; get("$msgurl"); # system("echo $phone $ARGV[0] $ARGV[1] $ARGV[2] $ARGV[3] $ARGV[4] $ARGV[5] $ARGV[6] $ARGV[7] $date >> $logfile"); } } } } sub mon { my $string="$ARGV[6]"; my ($digit) = $string =~ /^(\d+)/; my $val="$digit"; my $vale="${title}vale"; my $vale=eval "\$$vale"; print "$vale
"; print "$val
"; sendmail($val,$vale); } sub mon_power { my $val="$ARGV[5]"; my $vale="${title}vale"; print "$vale
"; my $vale=eval "\$$vale"; print "vale=$vale
"; print "val=$val
"; sendmail($val,$vale); } sub mon_all { if ($title=~"power") { mon_power(); print "
it is $title"; } else { mon(); print "
it is not power"; } } mon_all()