利用Nagios检测批量执行脚本的结果是否成功
利用Nagios检测批量执行脚本的结果是否成功
LionelShen 发表于4年前
利用Nagios检测批量执行脚本的结果是否成功
  • 发表于 4年前
  • 阅读 196
  • 收藏 2
  • 点赞 0
  • 评论 0

【腾讯云】如何购买服务器最划算?>>>   

摘要: 编写一个Nagios监控脚本,用来检测批量执行程序的结果状态; 这个脚本部署在每台服务器中,通过nrpe进程被Nagios自动定时检测; 检测结果可以返回Nagios状态以及执行结果信息;

lionel_do_result.pl

说明:批量执行脚本的输出到/tmp/check_do_result临时文件中

#!/usr/bin/perl
# author:shenxiaoran

use strict;

use lib "/opt/nrpe/libexec";
use utils qw(%ERRORS &print_revision &support &usage );

my $result_state;
my $result_content;
my $status = 'OK';

if ( $ARGV[0] =~ 'help' ) {
        print "Function: Nagios testing program installation was successful or failure \n";
        print "Usage: $0 \n";
        print "Example: lionel_do_result.pl \n";
}
else {
        succ_or_fail();

}

sub succ_or_fail() {
        open (FILE,"</tmp/check_do_result") || die ("Can't open /tmp/check_do_result $!");
        while (<FILE>) {
                my @result = split(/:/,$_);
                chomp($result_state = $result[0]);
                chomp($result_content = $result[1]);
        }
        close FILE;

        if ( $result_state =~ "CRITICAL" ) {
        $status = "CRITICAL";
                print "Do Reault $status: $result_content ";
                exit "$ERRORS{$status}"
        }
        else {
                print "Do Reault $status: $result_content ";
                exit "$ERRORS{$status}";
        }
}
共有 人打赏支持
粉丝 69
博文 117
码字总数 88010
×
LionelShen
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: