博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分布式监控系统Zabbix-3.0.3-完整安装记录 - 添加shell脚本监控
阅读量:6983 次
发布时间:2019-06-27

本文共 2373 字,大约阅读时间需要 7 分钟。

 

对公司的jira访问状态进行监控,当访问状态返回值是200的时候,脚本执行结果为1;其他访问状态返回值,脚本执行结果是0。然后将该脚本放在zabbix进行监控,当非200状态时发出报警。

jira访问状态的监控脚本为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
在jira部署机(比如是192.168.1.21)的zabbix监控脚本目录下编写监控脚本(jira的端口为8080):
 
[root@jira ~]
# cd /data/zabbix/monitor_scripts/
[root@jira monitor_scripts]
# cat jira.sh
#!/bin/sh
 
PATH=
/usr/local/sbin
:
/usr/local/bin
:
/sbin
:
/bin
:
/usr/sbin
:
/usr/bin
 
TomcatID=$(
ps 
-ef | 
grep 
tomcat|
grep 
-w 
'jira'
|
grep 
-
v 
grep
|
awk 
'{print $2}'
)
 
StartTomcat=
/home/jira/bin/start-jira
.sh
TomcatCache=
/home/jira/work
 
#WebUrl="http://127.0.0.1:8080/secure/Dashboard.jspa"
WebUrl=
"http://127.0.0.1:8080"
 
#GetPageInfo=/tmp/TomcatMonitor.Info
#TomcatMonitorLog=/tmp/TomcatMonitor.log
 
Monitor()
{
        
if 
[ $TomcatID ];
then
          
TomcatServiceCode=$(curl -Is --connect-timeout 5 $WebUrl|
grep 
"HTTP/1.1"
|
awk 
'{print $2}'  
)
            
if 
[ $TomcatServiceCode -
eq 
200 ];
then
               
echo 
"1"
            
else
               
echo 
"0"
               
#echo "[error]页面访问出错,开始重启tomcat"
               
#kill -9 $TomcatID
               
#sleep 3
               
#rm -rf $TomcatCache
               
#$StartTomcat
            
fi
        
else
          
echo 
"[error]tomcat进程不存在!tomcat开始自动重启..."
          
#echo "[info]$StartTomcat,请稍候......"
          
#rm -rf $TomcatCache
          
#$StartTomcat
        
fi
}
Monitor
 
查看jira是否启动
[root@jira monitor_scripts]
# lsof -i:8080
COMMAND    PID USER   FD   TYPE   DEVICE SIZE
/OFF 
NODE NAME
java    185656 root   70u  IPv6 17130649      0t0  TCP *:webcache (LISTEN)
java    185656 root   99r  IPv6 17325465      0t0  TCP 192.168.1.21:59110->192.168.1.21:webcache (ESTABLISHED)
java    185656 root  105r  IPv6 17325461      0t0  TCP 192.168.1.21:59106->192.168.1.21:webcache (ESTABLISHED)
 
[root@jira monitor_scripts]
# sh jira.sh
1
 
[root@jira monitor_scripts]
# cd ../etc/zabbix_agentd.conf.d/
[root@jira zabbix_agentd.conf.d]
# cat jira.conf
UserParameter=jira_code,
/bin/bash 
/data/zabbix/monitor_scripts/jira
.sh
 
 
然后在zabbix的服务端进行测试(如下,必须要返回正确结果,否则无效的键值,在zabbix里添加items也是无效!):
重点是通过zabbix_get获取jira_code的值,这个键值在zabbix添加items监控项的时候要填写正确
[root@zabbix ~]
# /data/zabbix/bin/zabbix_get -s 192.168.1.21 -k jira_code
1

然后登录zabbix,找到jira的部署主机,在jira主机的items里添加监控项:

接着添加trigger触发器。当该脚本执行结果为0的时候触发。

然后添加“动作”报警

这样,当jira主机的这个监控脚本执行结果为0的时候,就会触发这个动作,然后就会发出报警邮件或短信了。

也可以对这个监控项绘制监控图形。在jira主机的"图形”里添加图形

***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************
本文转自散尽浮华博客园博客,原文链接:http://www.cnblogs.com/kevingrace/p/5660580.html
,如需转载请自行联系原作者
你可能感兴趣的文章
[IOS]clang diagnostic、Wprotocol ..
查看>>
HTML4.01规范-HTML文档的顶层结构(3)
查看>>
11个鲜为人知的实用Linux命令 - Part 2
查看>>
我国今日接连发生4起地震 震级均在3级以上
查看>>
优化PhoneGAP的Splashscreen 类
查看>>
增强 wp_list_authors 显示文章最多的作者
查看>>
代码:显示查询的日历
查看>>
完整的目标管理三段俱全
查看>>
AD 脚本kixtart运用之六(outlook邮件批量生成签名)
查看>>
Tomcat 日志
查看>>
优化SQL查询:如何写出高性能SQL语句
查看>>
误删/etc/passwd的修复
查看>>
Linux图形界面与命令行模式切换
查看>>
CSS选择器
查看>>
UV认证应用安全标准的目的
查看>>
用VisualVM分析MyEclipse
查看>>
在android开发中使用multdex的方法-IT蓝豹为你整理
查看>>
Oracle创建表空间和用户
查看>>
基于IP访问控制的局限性
查看>>
yum安装源是出现报冲突错误,解决办法
查看>>