#!/usr/bin/perl
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
use strict;
use Sys::Hostname;
use DBI;
my $hostip='10.5.129.243';
my $dbName = 'dwh1';
my $dbUser = 'test';
my $dbUserPass = 'test';
my $dbh = DBI->connect("dbi:Oracle:$dbName", $dbUser, $dbUserPass) or die "can't connect to database ";
my $cpu_trigger=1.6;
my $disk_trigger=75;
my $memory_trigger=40;
my $io_trigger=70;
my $cpu_event;
my $memory_event;
my $red="e[1;31m";
my $green="e[1;32m";
my $yellow="e[1;33m";
my $normal="e[0m";
sub section() {
my $section=shift;
print ">>>>>$green $section $normal
";
}
sub memory() {
§ion("MEMORY");
my @array=`free -m | grep "Mem:"`;
foreach my $i (@array) {
my ($total,$usage,$free);
chomp $i;
$i =~ s/(^s+|s+$)//g;
$i =~ s/s+/ /g;
##抛弃第一个元素
(undef,$total,$usage,$free)=split /s+/,$i;
my $CurrTime = time2iso(time());
$dbh->do("insert into mem_info values ('$hostip','$total','$usage','$free',to_date('$CurrTime','YYYY-MM-DD hh24:mi:ss'))") or die($DBI::errstr);
}
}
memory