#!/usr/bin/perlusestrict;useGetopt::Long;useLWP::Simple;uselib"/usr/lib64/nagios/plugins";useutilsqw($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($contentne''){print"slingisrunningnow!\n";exit$ERRORS{'OK'};}else{print"slingisnotrunning,healthpagenotfound!!\n";exit$ERRORS{'UNKNOWN'};}}

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