xy123321 发表于 2018-8-31 08:41:40

perl学习之nagios脚本


[*]#!/usr/bin/perl
[*]use strict;
[*]use Getopt::Long;
[*]use LWP::Simple;
[*]use lib "/usr/lib64/nagios/plugins";
[*]use utils qw ($TIMEOUT %ERRORS &print_revision &support);
[*]my $HOSTADDRESS;
[*]Getopt::Long::GetOptions(
[*]      'h=s' => \$HOSTADDRESS
[*]);
[*]if (defined ($HOSTADDRESS)){
[*]      my $content = get("http://$HOSTADDRESS:8080/health.html");
[*]                if ( $content ne '' ){
[*]      print "sling is running now!\n";
[*]      exit $ERRORS{'OK'};
[*]}else{
[*]      print "sling is not running,health page not found!!\n";
[*]      exit $ERRORS{'UNKNOWN'};
[*]}
[*]}
  

  根据查看的nagios官网,如果用perl写监控脚本,必须使用strict模块,定义的所有变量都必须使用my声明,Getopt::Long模块可以为perl脚本传参,lib是指定nagios里utils.pm的位置,引用utils模块,nagios自带的%ERRORS可以为我们返回状态code。


页: [1]
查看完整版本: perl学习之nagios脚本