一、编写脚本

cd /usr/local/zabbix-4.0.3/share/zabbix/alertscripts

vi zabbix_sms.py

内容如下:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import sys

import requests

import urllib

def sendsms(phone, message):

data = {

'serviceid':'H435454534',

'fromserver':'1069xxxxxxxx',

'linkid':'C393434729151490',

'phone':phone,

'message':message

}

print(data)

url = 'http://xxx.xxx.xxx.xxx:xxxx/api/send'

try:

req=requests.get(url,params=data)

except Exception as e:

print(e)

else:

print(req.content)

if __name__ == '__main__':

phone = sys.argv[1]

message ='【Zabbix】'+sys.argv[2]

sendsms(phone,message.encode('gbk'))

二、测试脚本,执行

./zabbix_sms 150XXXXXXX 测试

看看手机是否收到短信

三、zabbix管理平台配置

1、创建一个新的媒介类型叫短信

参数为手机号,和告警内容

2、为用户设置短信告警媒体类型

3、为需要短信告警的触发器创建新的动作

##告警
主机名称:{HOST.NAME}
IP地址 :{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警信息:{TRIGGER.NAME}
告警级别:{TRIGGER.SEVERITY}
检查项 :{TRIGGER.KEY1}
当前状态:{TRIGGER.STATUS}
值={ITEM.LASTVALUE}
故障已持续{EVENT.AGE}

##恢复
主机名称:{HOST.NAME}
IP地址 :{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
故障时长:{EVENT.AGE}
告警信息:{TRIGGER.NAME}
告警级别:{TRIGGER.SEVERITY}
检查项 :{TRIGGER.KEY1}
当前状态:{TRIGGER.STATUS}
值={ITEM.VALUE}

动作设置完毕,就可以测试了

zabbix 利用python脚本实现短信告警的更多相关文章

  1. zabbix 利用python脚本实现钉钉告警

    Zabbix 利用python脚本实现钉钉告警 1.安装python3.6环境 2.创建python脚本 cd local/zabbix-4.0.3/share/zabbix/alertscripts ...

  2. zabbix系列之十——添加短信告警

    zabbix添加短信告警 1.查看zabbix-server脚本存放路径: [root@GYQ-Prod-Zabbix ~]# grep AlertScriptsPath /etc/zabbix/za ...

  3. 基于阿里云平台的使用python脚本发送短信

    第一步:点击短信服务下的帮助文档 第二步:安装python的SDK:点击安装python sdk 第三步:直接通过python的pip工具安装即可,方便快捷: 第四步:点击红框进行测试: 第五步:测试 ...

  4. zabbix利用python脚本发送钉钉报警

    #!/usr/bin/python # -*- coding: utf-8 -*- import requests import json import sys import os headers = ...

  5. zabbix通过脚本发送短信

    zabbix通过脚本发送短信 原则 和zabbix电子邮件是一样的,他们是action内部配置,司的api来完毕.当然网上有不少利用139邮箱来发的,这个事实上算调用email的一种,这里复述的是调用 ...

  6. zabbix配置短信告警

    zabbix版本:3.0.7 短信服务商:云片网 首先在云片网添加相应签名和模板 参照格式 签名:xxx告警 模板: [xxx告警]故障:#status# 服务器:#host# 发生:#trigger ...

  7. 检查ftp备份数据完整性及短信告警的shell脚本

    发布:thebaby   来源:net     [大 中 小] 检查ftp备份数据完整性及短信告警的shell,有需要的朋友可以参考下. 该脚本实现如下的功能: 对远程备份到ftp服务器的数据完整性及 ...

  8. k8s全方位监控 -prometheus实现短信告警接口编写(python)

    1.prometheus短信告警接口实现(python)源码如下: import subprocess from flask import Flask from flask import reques ...

  9. zabbix3调用接口发送短信告警

    一.需求 之前使用的邮件告警,由于经常会忽略邮件,所以有时候告警查看的并不及时,所以增加短信告警的,以便及时处理. 二.zabbix-server端的配置 # 需要在zabbix-server端打开A ...

随机推荐

  1. django-chunks文件

    with open(file_save_path, 'wb') as f: for chunk in file_content.chunks(): f.write(chunk)

  2. 安装hyperledger fabric V1.0.0-beta

      安装文档位置: https://github.com/hyperledger/fabric   fabric代码托管地址 https://hyperledger-fabric.readthedoc ...

  3. scala-class

    object Scala { def main( args : Array[ String ] ) : Unit = { val p = , ); println( p ); p.move( , ); ...

  4. java 获得系统当前时间

    import org.junit.Test; import java.text.SimpleDateFormat; import java.util.Calendar; import java.uti ...

  5. 《汇编语言 基于x86处理器》第十章结构和宏部分的代码

    ▶ 书中第十章的程序,主要讲了结构与宏的使用 ● 代码,使用结构,对比是否对齐的性能差距 INCLUDE Irvine32.inc INCLUDE macros.inc structN STRUCT ...

  6. 配置Eclipse的Maven环境

  7. 3. easyui 修改功能实例

    function modifyPerson() { var rows = $('#personInfoGrid').datagrid('getSelections'); if (rows.length ...

  8. Asp.Net前台调用后台变量

    1.Asp.Net中几种相似的标记符号: < %=...%>< %#... %>< % %>< %@ %>解释及用法 答: < %#... %&g ...

  9. H5视频推流方案

    导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮流,自己学习实现了一套简单的 H5 视频推流的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验. 环境部署 1. 配置 ...

  10. Duboo 与springboot整合

    https://github.com/apache/incubator-dubbo-spring-boot-project 当采用properties方式时,可以用下方的注解 1.pom <de ...