分布式监控系统Zabbix-3.0.3--短信报警设置

简介:
+关注继续查看

前面已分别介绍了zabbix的邮件、微信报警设置,这些都是手机在有网络时才能收到报警信息,那如果手机没有网的情况下怎么办,这就需要考虑使用短信接口报警了。当服务出现故障达到预警级别是通过发送短信的形式告诉运维人员,以便及时处理。公司的短信接口是从短信服务器购买的,并经过公司开发大神调整后使用的。废话不多赘述,下面直接记录配置过程:

一、zabbix服务端的脚本路径设置

1
2
[root@zabbix ~]# cat /data/zabbix/etc/zabbix_server.conf|grep alertscripts
AlertScriptsPath=/data/zabbix/alertscripts

二、短信脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
--------------------------------------------------------------------------------------------------------
下面是开发大神对短信服务器提供的接口进行调试之后给运维部分使用的短信接口
curl -H "Content-type: application/json" -X POST 192.168.1.10:8080/sms/send/batch -d '
{
  "phones": [
    "13611789029",
    "12310703369",
    "13314466149"
  ],
  "callOrgCode""YW1001",
  "callOrgName""运维部门",
  "callAppCode""WANG_OPS",
  "key""R13-G294595Y32M24TAD60JK",
  "templateId": 6,
  "valueMap": {
   "msg""test001服务器出现问题!请尽快修复!"
  }
} '
 
可以在命令行里手动执行上面的接口进行发信测试,在目标手机查看是否收到短信。
--------------------------------------------------------------------------------------------------------

结合上面的短信接口,zabbix短信报警脚本如下:

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
[root@zabbix alertscripts]# cat zabbixsend_sms.sh
#!/bin/bash
export LANG=en_US.UTF-8
 
PHONE=$(echo $1|sed 's/,/",\n"/g')                         #第一个变量($1)。由于多个号码要换行,并且每行要加双引号,故要做匹配转换设置
#Message=$(echo $3|sed 's/:/": "/g'|sed 's/,/",\n"/g')
#Message=$(echo $3|sed 's/: /": "/g'|sed 's/,/",\n"/g')
Message=$3                                                 #第三个变量
 
curl -H "Content-type: application/json" -X POST 192.168.1.10:8080/sms/send/batch -d """          #公司的短信接口地址,这里采用post方式
{
  \"phones\": [
    \"$PHONE\"
  ],
  \"callOrgCode\":\"YW1001\",                       
  \"callOrgName\": \"运维部门\",
  \"callAppCode\": \"WANG_OPS\",
  \"key\": \"R13-G294595Y32M24TAD60JK\",
  \"templateId\": \"6\",
  \"valueMap\": {
   \"msg\": \"$Message\"
  }
"""                                         #前后三个引号表示引号里的内容输入什么就是什么,变量参数不会被影响。
 
time=`date '+%F %T'`
echo "${time}  ${PHONE} $Message" >> /data/log/sendsms_`date +%Y-%m`.log
 
[root@zabbix alertscripts]# chmod 755 zabbixsend_sms.sh
 
可以先手动执行脚本进行发信测试:
$1是发信的手机号码
$2是发信的主题,这个一般短信报警信息里不显示,如下测试是"报警测试"。上面脚本中没有配置$2的变量
$3是发信的内容。
三个变量使用空格隔开
[root@zabbix alertscripts]# ./zabbixsend_sms.sh 13633767819 报警测试 backup01服务器宕机了!
{"totalCnt":1,"successCnt":1,"failCnt":0,"failPhones":[],"failMsg":null,"msgContent":"backup01服务器宕机了!"}

三、zabbix的web界面里的报警设置

1)报警媒介类型设置


2)用户的报警媒介设置

3)"动作"设置

上面的报警主题如下,这个其实在短信报警信息中没有体现,随便定义即可。

1
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

报警内容如下(由于开发那边的调整规则,报警内容换行后就发信失败,所以这里只能讲报警内容放在一行)

1
告警主机:{HOSTNAME1}, 告警时间:{EVENT.DATE} {EVENT.TIME}, 告警等级:{TRIGGER.SEVERITY}, 告警信息: {TRIGGER.NAME}, 告警项目:{TRIGGER.KEY1}, 问题详情:{ITEM.NAME}:{ITEM.VALUE}, 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}, 事件ID:{EVENT.ID}

手机短信报警截图如下:

发信后,可以查看zabbix的web界面里的"报表"->“动作日志”

***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************
本文转自散尽浮华博客园博客,原文链接:http://www.cnblogs.com/kevingrace/p/7400583.html,如需转载请自行联系原作者
相关文章
|
4月前
|
存储 监控 数据可视化
Zabbix分布式监控系统从理论到实践
Zabbix分布式监控系统从理论到实践
|
10月前
|
存储 缓存 监控
一文看懂分布式链路监控系统
本文通过阿里的Eagleeye(鹰眼)和开源的Skywalking,从数据模型、数据埋点以及数据存储三个方面介绍分布式链路监控系统的实现细节,其中将重点介绍Skywalking字节码增强的实现方案。
1688 21
一文看懂分布式链路监控系统
|
11月前
|
数据采集 运维 监控
分布式统一监控系统架构图与设计思路| 学习笔记
快速学习分布式统一监控系统架构图与设计思路。
234 0
分布式统一监控系统架构图与设计思路| 学习笔记
|
数据采集 运维 监控
分布式统一监控系统架构图与设计思路
一、问题解答 二、分布式统一系统 三、统一监控系统架构图 四、设计思路
分布式统一监控系统架构图与设计思路
|
监控 负载均衡 前端开发
用SkyWalking做分布式追踪和应用性能监控系统
SkyWalking 是观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。
1633 0
|
监控 NoSQL MongoDB
深入解读面向微服务的分布式秒级监控系统Infinsight
在云服务环境中,服务的质量一向是云服务厂商关注的重点,为了保证云服务质量的最大化,以及在出现故障时能够协助用户对故障进行快速的定位,监控服务在其中起着非常重要的作用。
1296 0
|
监控 BI 数据库
.Net架构篇:思考如何设计一款实用的分布式监控系统?
前言 无论从最早期的unix操作系统,还是曾经大行其道的单体式应用,还是现在日益流行的微服务架构,始终都离不开监控的身影。如windows的任务管理器,linux的top命令,都可以看作是监控的面板。
1276 0
|
Web App开发 存储 监控
企业级分布式监控系统--zabbix
1.Zabbix简介   Zabbix 是一个企业级的分布式开源监控方案。 2.zabbix安装 zabbix重要的不是部署,而是学会操作使用,所以推荐大家进行一键部署。 手动部署可参考官方文档:https://www.
3322 0
相关产品
云迁移中心
推荐文章
更多