perl学习之nagios脚本
发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,#!/usr/bin/perluse strict;use Getopt::Long;use LWP::Simple;use lib "/usr/lib64/nagios/plugins";use u
- #!/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。