码迷,mamicode.com
首页 > 其他好文 > 详细

Zabbix实现短信报警设置(实战)

时间:2016-12-15 15:00:09      阅读:880      评论:0      收藏:0      [点我收藏+]

标签:zabbix   短信报警   

配置环境:

zabbix 2.2.15

1.配置示警媒介类型

技术分享

技术分享

此文件所在位置:/usr/lib/zabbix/alertscripts/

必须拥有执行权限,并且改变所属用户和组

要修改此脚本的路径,需修改zabbix_server.conf

AlertScriptsPath=/usr/lib/zabbix/alertscripts

脚本内容:

#!/bin/bash
#
# Filename: sendSMS.sh
# Revision: 1.0
# Date: 2016/12/13
# Author: wang
# Email:
# Description: zabbix短信告警脚本
# Notes: 短信网关使用了中国网建SMS短信通
#

# 脚本的日志文件
LOGFILE="/tmp/SMS.log"
:>"$LOGFILE"
exec 1>"$LOGFILE"
exec 2>&1

# Uid和Key的值需要自行修改,http://www.smschinese.cn/api.shtml
# Uid 网站用户名
# Key 接口秘钥
Uid="xxxxxx"
Key="xxxxxx"

MOBILE_NUMBER=$1 # 手机号码
MESSAGE_UTF8=$3 # 短信内容
XXD="/usr/bin/xxd"
CURL="/usr/bin/curl"
TIMEOUT=5

# 短信内容要经过URL编码处理,除了下面这种方法,也可以用curl的--data-urlencode选项实现。
MESSAGE_ENCODE=$(echo "$MESSAGE_UTF8" | ${XXD} -ps | sed ‘s/\(..\)/%\1/g‘ | tr -d ‘\n‘)
# SMS API
URL="http://utf8.sms.webchinese.cn/?Uid=${Uid}&Key=${Key}&smsMob=${MOBILE_NUMBER}&smsText=${MESSAGE_ENCODE}"
# Send it
set -x
${CURL} -s --connect-timeout ${TIMEOUT} "${URL}"

 把链接替换成自己的就可以了,测试中curl不太好用,可以用elinks代替!

2.然后是创建用户

技术分享

技术分享

 技术分享

3.其次是配置告警动作

  1、选择系统配置----》动作----》Create action 创建动作

  2、配置操作名称和报警邮件内容

技术分享

主题:{TRIGGER.STATUS}: {TRIGGER.NAME}
告警主机:{HOST.NAME}
主机IP: {HOST.IP}
状态: {TRIGGER.STATUS}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警信息: {TRIGGER.NAME}
告警等级: {TRIGGER.SEVERITY}
Trigger URL: {TRIGGER.URL}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
事件ID: {EVENT.ID}

  3.根据自己的需求设置条件

技术分享

  4.定义操作

技术分享

最后就是触发一下报警进行测试,需要注意的是短信通道一般不能频繁发送短信,大家测试的时候注意发送频率!

本文出自 “linux运维技术” 博客,请务必保留此出处http://forall.blog.51cto.com/12356505/1882979

Zabbix实现短信报警设置(实战)

标签:zabbix   短信报警   

原文地址:http://forall.blog.51cto.com/12356505/1882979

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!