zabbix自动发现监控tomcat健康页面

  

zabbix自动发现监控tomcat健康页面

一、背景

,,,公司系统平台有10几个tomcat服务,由于需要服务保持全年无间断服务,特在tomcat中嵌入专门的监控页面,在旋度专用页面返回值为200时,则认定服务正常运行,否则报警发送专门的监控运维的邮箱。

二,原理

正常的tomcat健康状态监控页面如下图

 zabbix自动发现监控tomcat健康页面

我们利用如下命令判断返回值是否为200

shell>/usr/bin/curl - o/dev/null - s, connect-timeout 5 - w ' % {http_code} ' http://10.0.0.107:9100短信app/健康

倘若返回值不为200,则断定服务异常,报警

三,具体自动发现操作部署如下

1,首先定义需要监控自动发现的tomcat的URL

如下内容

1, cat 在/etc/zabbix/WEB.txt  & lt; & lt; EOF   10.0.0.107:9000 sms-admin/健康   10.0.0.107:9100/短信app/健康   10.0.0.107:9090 auditServer/健康   10.0.0.107:7711 pushControl/健康   10.0.0.107:7700 sendService/健康   10.0.0.107:6003/pa/健康   10.0.0.107:8513/短信/健康   10.0.0.107:7712 pushControl/健康   10.0.0.107:7725 reply-server/健康   10.0.0.107:2222 mdnServer/健康   EOF

2,监控脚本如下图所示

1, cat 在/etc/zabbix/脚本/web_site_code_status.sh  & lt; & lt; EOF   # !/bin/bash    #,功能:monitor  tcp  connect  status 得到zabbix       source /etc/bashrc 在/dev/null  2祝辞,1   source /etc/profile ,在/dev/null  2祝辞,1   #/usr/bin/curl  -o /dev/null  -s  -w  % {http_code}, http://1美元/,      web_site_discovery  (), {   WEB_SITE=($ (cat ,/etc/zabbix/WEB.txt | grep  -v “^ #”))   ,,,,,,,printf “{\ n”   ,,,,,,,printf ,“\ t“数据”:[\ n '   ((i=0; i<$ {# WEB_SITE [@]}; + + i))   {   num=$ (echo  $ (($ {# WEB_SITE [@]} 1)))   ,,,,,,,if [,”我美元“!=,$ {num},);   ,,,,,,,,,,,,,,,   ,,,,,,,printf “\ t \ {, \ n”   ,,,,,,,printf “\ t \ t \ \”{# SITENAME} \ ": \ " $ {WEB_SITE [$ i]} \ "} \ n”   ,,,,,,,,,,,,,,,   ,,,,,,,,,,,,,,,,,,,,,,,printf ,“\ t \ {, \ n”   ,,,,,,,,,,,,,,,,,,,,,,,printf ,“\ t \ t \ \”{# SITENAME} \ ": \ " $ {WEB_SITE [$ num]} \“}]} \ n”   ,,,,,,fi   }   }      web_site_code  (), {/usr/bin/curl  -o /dev/null  -s ——connect-timeout  5, -w “% {http_code}”, 1美元   }      case “$ 1”,   web_site_discovery)   web_site_discovery   ;;   web_site_code)   web_site_code  2美元   ;;   *)      echo “用法:$ 0,{web_site_discovery | web_site_code  [URL]}”,   ;;   esac   EOF

3,增加zabbix配置文件监控项目

1, root@DL-test2: zabbix #, grep  " ^ [a - z]”, zabbix_agentd.conf    PidFile=/var/运行/zabbix/zabbix_agentd.pid   日志文件=/var/log/zabbix/zabbix_agentd.log   文件大?0   服务器=10.0.0.113   ServerActive=10.0.0.113   主机名=DL-test2   包括=/etc/zabbix/zabbix_agentd.d/* .conf , #此项打开      1、cat 在/etc/zabbix/zabbix_agentd.d/web_site_discovery.conf  & lt; & lt; EOF   UserParameter=web.site.discovery/bin/bash /etc/zabbix/脚本/web_site_code_status.sh  web_site_discovery ,   UserParameter=web.site.code [*]/bin/bash /etc/zabbix/脚本/web_site_code_status.sh  web_site_code  1美元   EOF   #/bin/bash 此项必须要加上,不然有可能找不到命令,导致脚本命令无法被zabbix-agent调用

4,增加自动发现模板

模板详见附件

直接在模板里导入附件模板

启动zabbix-agent

会在被监控主机的触发器中发现我们需要监控的tomcat  zabbix自动发现监控tomcat健康页面”> <br/> </p> <p>停6003端止口的服务,我们会发现如下图所示报警</p> <p> <img src=

然后启动6003服务后,服务监控正常

至此自动发现tomcat服务状态,部署完毕

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

zabbix自动发现监控tomcat健康页面