Perl 监控Redis
发布时间:2020-12-15 23:41:45 所属栏目:大数据 来源:网络整理
导读:use Redis; use Sys::Hostname;use HTTP::Date qw(time2iso str2time time2iso time2isoz); use Net::SMTP;sub basic() { $host = hostname; @lines=qx|/sbin/ifconfig|; @ip; print "-" x 80 ."n"; foreach(@lines){ if(/inet addr:([d.]+)/){ push @ip,$
use Redis; use Sys::Hostname; use HTTP::Date qw(time2iso str2time time2iso time2isoz); use Net::SMTP; sub basic() { $host = hostname; @lines=qx|/sbin/ifconfig|; @ip; print "-" x 80 ."n"; foreach(@lines){ if(/inet addr:([d.]+)/){ push @ip,$1 unless $1 =~ /A127.0.0.1z/; } } print "${yellow}HOST: $host => IP: @ip$normaln"; print "-" x 80 ."n"; }; &basic(); sub send_mail{ if (@_ != 2){print "errorn"}; ($m,$n) = @_; my $to_address = $m; my $CurrTime = time2iso(time()); my $to_address = $m; my $mail_user = 'zhaoyangjian@zjcap.cn'; my $mail_pwd = 'xxxxx'; my $mail_server = 'smtp.exmail.qq.com'; my $from = "From: $mail_usern"; my $subject = "Subject: zjcap infon"; my $info = "$CurrTime--$n"; my $message = <<CONTENT; $info CONTENT my $smtp = Net::SMTP->new($mail_server); $smtp->auth($mail_user,$mail_pwd) || die "Auth Error! $!"; $smtp->mail($mail_user); $smtp->to($to_address); $smtp->data(); # begin the data $smtp->datasend($from); # set user $smtp->datasend($subject); # set subject $smtp->datasend("nn"); $smtp->datasend("$messagen"); # set content $smtp->dataend(); $smtp->quit(); }; $var; eval{ my $r = Redis->new( server => "127.0.0.1:6379",reconnect => 1,every=>60) or (die "can't connect to redis"); $r = Redis->new( password => 'xxxx' ); $var=$r->get('test'); print "$var is $varn"; $r->quit; }; print "$varn"; if ( defined($var) ){print "redis could connetctn"} else {print "redis is lost",send_mail('zhaoyangjian@zjcap.cn',"@ip-redis is lostn")}; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |