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

在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主机的"图形”里添加图形

分布式监控系统Zabbix-3.0.3-完整安装记录 - 添加shell脚本监控的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(3)-监控nginx,php,memcache,Low-level discovery磁盘IO

    前段时间在公司IDC服务器上部署了zabbix3.0.3监控系统,除了自带的内存/带宽/CPU负载等系统资源监控模板以及mysql监控模板外,接下来对诸如nginx.php.memcache.磁盘IO ...

  2. Zabbix 4.0.24 完整安装

    依赖包安装: yum install net-snmp* libssh-devel libssh2-devel -y Zabbix server安装: wget https://cdn.zabbix. ...

  3. 分布式监控系统Zabbix--完整安装记录 -添加web页面监控

    通过zabbix做web监控,不仅仅可以监控到站点的响应时间,还可以根据站点返回的状态码或响应时间做报警设置,比如说对某个url进行监控,当访问返回的状态码是非200状态时都报警(创建触发器即可).下 ...

  4. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  5. 分布式监控系统Zabbix-3.0.3-完整安装记录(1)

    分布式监控系统Zabbix-3.0.3的安装记录 环境说明zabbix-server:192.168.1.30     #zabbix的服务端(若要监控本机,则需要配置本机的Zabbix agent, ...

  6. shell脚本监控Linux系统性能指标

    2016-11-04 22:41 原作者不详 分类: Linux(7) 在服务器运维过程中,经常需要对服务器的各种资源进行监控, 例如:CPU的负载监控,磁盘的使用率监控,进程数目监控等等,以在系统出 ...

  7. 用shell脚本监控进程是否存在 不存在则启动的实例

    用shell脚本监控进程是否存在 不存在则启动的实例,先上代码干货: #!/bin/shps -fe|grep processString |grep -v grepif [ $? -ne 0 ]th ...

  8. linux shell脚本监控进程是否存在

    用shell脚本监控进程是否存在 不存在则启动的实例,先上代码干货:    #!/bin/shps -fe|grep processString |grep -v grepif [ $? -ne 0 ...

  9. Linux简单Shell脚本监控MySQL、Apache Web和磁盘空间

    Linux简单Shell脚本监控MySQL.Apache Web和磁盘空间 1. 目的或任务 当MySQL数据库.Apache Web服务器停止运行时,重新启动运行,并发送邮件通知: 当服务器磁盘的空 ...

随机推荐

  1. nginx ssl 自签证书实验

    两台服务器 11.11.11.3     (生成证书然后到CA服务上注册) 11.11.11.4    (nginx服务.CA证书签发) 1.建立CA服务器(11.3) .在CA上生成私钥文件 在/e ...

  2. ccf题库中2016年4月2日俄罗斯方块问题

    题目如下: 问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏. 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块.每一轮,都会有一个新 ...

  3. 第 16 章 C 预处理器和 C 库(qsort() 函数)

    /*---------------------------------------- qsorter.c -- 用 qsort() 排序一组数字 --------------------------- ...

  4. while else 结构体(自测)

    while else : while循环被break打断,则不执行与while并列的else程序. count = 0 while count <= 5: count = count + 1 i ...

  5. pb中遍历查询数据库数据问题(数据库为 sql server)

    指针可以实现但是不推荐 例如:(部分代码) for ll_a = 1 to ll_count    ll_b = ll_i +  ll_a  //插入行行号先下移一位    dw_main.inser ...

  6. 【Java学习系列】第4课--Java Web相关

    本文地址 分享提纲: 1.概述 2. Jsp基础 2.1 1.概述 1.1)[来源和先导] 本文主要的java web的教程来源JSP是 菜鸟教程JSP 和 天码营Java Web.     主要的先 ...

  7. 【记录】GIT 常用命令记录

    1. 查看所有的提交版本,包含当你co到之前提交版本后依旧可以看到以前的日志 git log --graph --pretty=format:'%h -%d %s (%cr)' --abbrev-co ...

  8. 2018-2019-2 网络对抗技术 20165318 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165318 Exp4 恶意代码分析 原理与实践说明 实践目标 实践内容概述 基础问题回答 实践过程记录 1.使用schtasks指令监控系统 2.使用sys ...

  9. kubelet 初始化过程

    kubelet 初始化过程 . kubelet 启动 . kubelet认为,它并没有有一个kubeconfig文件 . kubelet搜索并查找bootstrap-kubeconfig文件 . ku ...

  10. 3分钟学会做智能插座(DIY)

    转载请注明:@小五义http://www.cnblogs.com/xiaowuyiQQ群:64770604 感谢博达科技提供的技术支持,博达科技新出了turnip智能插座,通过微信控制,实现了语音控制 ...