网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

如何编写nagios插件

Nagios最让人动心的地方就是可以随心所欲的编写自己想要检测的内容,他只需要几行简单的代码就可以为你检测到你想检测到的内容,只要根据nagios编写插件的原则来编写,这是很容易的。

创新互联公司专业为企业提供合作网站建设、合作做网站、合作网站设计、合作网站制作等企业网站建设、网页设计与制作、合作企业网站模板建站服务,10年合作做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

Nagios首先需要一个状态码,熟悉nagios的人都知道nagios有四种状态码,分别为OK、WARNING、CRITICAL、UNKNOWN,所以编写插件首先要做到的就是返回状态码,返回状态码如何表示呢,nagios如何识别呢,其实很简单,nagios只要知道脚本退出是的状态就可以确定监控项的状态,下面是nagios返回的状态码与退出脚本时的状态的对照表

OK

0

WARNING

1

CRITICAL

2

UNKNOWN

3

因为本人比较热衷于shell,所以我就介绍一下shell脚本的写法以及简单的示例。先贴出来一个比较简单的用于测试并发量的监控脚本吧。

#!/bin/bash

path=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

#下面是返回状态码

STATE_OK=0

STATE_WARNING=1

STATE_CRITICAL=2

STATE_UNKNOWN=3

#下面是统计有多少个ESTABLISHED状态的连接

total=`netstat -n | awk '/^tcp/ {++S[$NF]}END {for(a in S) print a, S[a]}' |grep "ESTABLISHED" | awk '{print$NF}'`

#下面是返回状态码和StatusInformation

if [ $total -lt 100 ];then

echo"TEST OK : The established status id $total"

exit$STATE_OK

elif [ $total -gt 100 -a $total -lt 200];then

echo"TEST WARNING : The established status id $total"

exit$STATE_WARNING

elif [ $total -gt 201 ];then

echo"TEST CRITICAL : The established status id $total"

exit$STATE_CRITICAL

else

echo"UNKNOWN STATE"

exit$STATE_UNKNOWN

fi

是不是很简单,echo输出的是在StatusInformation里显示的内容,exit是返回的状态码,这样一个简单的监控脚本就写出来了,这个脚本只适合在linux上使用,要向在其他平台上使用还需要借助其他的语言,这里就不多做介绍了,下面贴一下这个脚本检测的效果图。


如何编写nagios插件

附件:http://down.51cto.com/data/2363729

文章标题:如何编写nagios插件
标题路径:http://bjjierui.cn/article/ihceoh.html

其他资讯