设置告警脚本的路径

# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts

创建脚本

在这里,仅以一个简单脚本进行测试

# cat zabbix_syslog.py

#!/usr/bin/python
import sys,time
print sys.argv
now=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
f= open(r'/tmp/syslog_test.txt', 'a+')
f.write(now+" ")
for line in sys.argv:
f.write(line+" ")
f.write("\n")
f.close()

注:该脚本需在AlertScriptsPath路径下,且需可执行权限。

设置告警介质

Administration-> Media types-> create media type

注意:Type需选择为Script

将告警介质与用户关联

Administration -> Users

点击 Admin,也可以新建用户进行关联

Media -> Add

type选择告警介质中定义的name

创建Action

Configuration -> Actions -> Create action

在这里,以Zabbix自带的“Template OS Linux”模板中的服务器重启的Trigger作为Action的对象

测试

重启node1

[root@node1 ~]# init 6

验证测试结果

首先查看Action是否产生

Administration -> Audit

查看告警信息是否写入到文件中

[root@node3 ~]# cat /tmp/syslog_test.txt
2017-04-25 18:28:30 /usr/lib/zabbix/alertscripts/zabbix_syslog.py slowtech@126.com PROBLEM: node1 has just been restarted node1^192.168.244.10^PROBLEM^Warning^主机重启 主机:node1(node1 has just been restarted)
2017-04-25 18:28:30 /usr/lib/zabbix/alertscripts/zabbix_syslog.py slowtech@126.com OK: node1 has just been restarted node1^192.168.244.10^OK^Warning^主机重启恢复 主机:node1(node1 has just been restarted)

脚本告警配置成功,哈哈,突然想到,对于重启的告警无需设置Recovery message,因为告警本身就意味着服务器启动成功了。

Zabbix如何设置脚本告警的更多相关文章

  1. 023.Zabbix自定义(邮箱)脚本告警-02

    待补充 有需要,请留言!

  2. 022.Zabbix自定义(邮箱)脚本告警01

    待补充 有需要,请留言!

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

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

  4. Zabbix 配置钉钉脚本告警

    1.钉钉账号创建,并创建一个组,在组中添加一个机器人,然后记下webhook地址即可. 2.编辑一个报警脚本,此处使用的是BASH脚本,并覆盖我们的webhook地址到相应的位置. [root@loc ...

  5. Zabbix使用微信发送告警(附Python代码)

    介绍 本文将介绍如何把zabbix告警接入到微信,通过微信企业号将告警信息发送到运维人员的微信上.本文适合于已经实现了邮件告警的小伙伴,因为需要在已经能实现告警的基础上进行,如果还不知道如何配置zab ...

  6. zabbix 服务器设置邮件报警

    实验条件: Zabbix监控服务器.客户端都已经部署完成,被监控主机已添加完成,Zabbix监控运行正常. 实现目的: Zabbix监控服务器设置邮件报警,当被监控主机宕机或达到触发器预设值进,会自动 ...

  7. Zabbix 配置Python邮件告警

    1.首先你应该注册一个163邮箱,用于发信,再注册时开启SMTP/POP3功能,使用加密密码认证. 2.在Zabbix主机上新建send.py文件,将以下代码复制编辑,设置发件用户.密码. [root ...

  8. Zabbix三种邮箱告警配置

    环境 环境 IP地址 主机名 需要安装的应用 系统版本 服务端 192.168.23.140 zabbix lamp zabbix_server zabbix_agent CentOS 8 客户端 1 ...

  9. 运维利器:钉钉机器人脚本告警(Linux Python 篇)

    写在前面的话 在前面的博客中已经具体提到了如何获取对的机器人的 Token 等操作,不清楚的可以参考之前写的 [运维利器:钉钉机器人脚本告警(Linux Shell 篇)]这篇博客的前部分. 本文主要 ...

随机推荐

  1. input事件--->按键事件的基本实现

    本程序基于TINY4412开发板,程序已经验证过,完全正确: 那么,如何来写这样的一个驱动程序呢? 1.分配一个input_dev结构体 2.设置 3.注册 4.硬件相关的代码,比如中断,定时器,休眠 ...

  2. javascript之prototype原型属性

    这个地方有点绕,仔细理解代码的意义. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  3. matlab下K-means Cluster 算法实现

    一.概念介绍 K-means算法是硬聚类算法,是典型的局域原型的目标函数聚类方法的代表,它是数据点到原型的某种距离作为优化的目标函数,利用函数求极值的方法得到迭代运算的调整规则.K-means算法以欧 ...

  4. LCS问题(最长公共子序列)-动态规划实现

    问题描述: 问题] 求两字符序列的最长公共字符子序列 注意: 并不要求子串(字符串一)的字符必须连续出现在字符串二中. 思路分析: 最优子结构和重叠子问题的性质都具有,所以要采取动态规划的算法 最长公 ...

  5. OC第一天——面向对象

    1.OC: Object- C ,面向对象的语言 2.OC 和 C的区别: <1> oc是 c的超集 ,oc是在c语言的基础上做了扩展,c语言中的所有语法,在oc中都可以使用,甚至你可以在 ...

  6. 通过Java进行网页抓取并生成plist创建代码

    抓取网页的方法: 抓取网页可以通过正则表达式也可以通过Java. 通过firefox浏览器,安装Firebug来查看网页的源代码. 首先将要抓取的部分保存到本地,步骤如下: 1.在要抓取的位置右键,选 ...

  7. (二十七)QQ好友列表的实现

    QQ好友列表通过plist读取,plist的结构为一组字典,每个字典内有本组的信息和另外一组字典代表好友. 要读取plist,选择合适的数据结构,例如NSArray,然后调用initWithConte ...

  8. (Struts2)XWork容器的实现机理

    模板方法----callInContext 翻开ContainerImpl的实现,我们可以看到callInContext,这个模板方法是容器所有操作调用的基础. 关于模板方法模式,大家可以看出刘伟老师 ...

  9. laydate日期空间与时间选择器

     http://laydate.layui.com/

  10. Gradle 1.12用户指南翻译——第二十二章. 标准的 Gradle 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...