zabbix可以监控很多东西,内置了很多监控项,但是,我们如果想监控一个比较特殊的东西,而zabbix自身又没带,这个时候我们就可以通过zabbix_sender来实现某个特殊项的监控:
比如,我们要检测 tomcat 是否正常,若果不正常,就重启
#!/bin/bash
#检测tomcat状态并做相应的操作,启动tomcat
# maple 20121113
zabbix_sender=”/usr/bin/zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k tomcat_id -o”
TOMCATPATH=/program/tomcat7-3/
#tomcat 路径
TOMCATPORT=8083
#tomcat 端口
cd $TOMCATPATH
pIDa=/usr/sbin/lsof -i :$TOMCATPORT|grep -v "PID" | awk '{print $2}'
if [ “$pIDa” != “” ];
#判断该端口是否被占用
then
#如果被占用,说明启动着
$zabbix_sender 1 >/dev/null
else
#如果不被占用,说明出问题了
$zabbix_sender 0 >/dev/null
bin/startup.sh
#直接重启
fi
我们需要注意的地方有如下几个地方:
1:tomcat_id ,这个是一个key,也就是说,必须是我们先在zabbix中创建key,然后我们才能给这个key发送值,创建的方法是在zabbix中template创建item
2: 我们定义了两个值 0 1 ,0 是tomcat有问题,1 是正常
然后我们就可以发送值了
3:我们需要定义一个trigger来绑定我们的item,比如trigger就是我们这个item的值是是1的时候就报警
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021