我有来自Nagios的check_tcp插件的问题,找不到任何像我需要的插件.
我通过check_tcp向端口发送一个字符串并返回一个数字,在本例中为2580.在这个数字上我需要定义警告和批评值.
例:
/usr/lib/nagios/plugins# ./check_tcp -H XXXXXXXXXX -p 51031 -E -s "status\r\n" -d 1 -t 30 -e "SOMEThING" TCP WARNING - Unexpected response from host/socket: 2580|time=0,000358s;;;0,000000;30,000000
我需要像这样的东西:
/usr/lib/nagios/plugins# ./check_tcp -H XXXXXXXXXX -p 51031 -E -s "status\r\n" -d 1 -t 30 -w 2500 -c 3000
无论如何要做这个或任何我还没有找到的插件?
解决方法
创建自己的包装器,即.在Perl中,要在内部执行check_tcp,然后根据响应分析响应并返回退出代码.
通过如此简单的检查,您甚至可以在Perl中实现整个操作而不包装其他命令.
示例代码如下:http://xmodulo.com/how-to-write-simple-tcp-server-and-client-in-perl.html