Zabbix实现邮件和钉钉实时告警(使用python脚本)

news2025/6/26 21:16:42

告警和通知

告警是监控的主要职能,是指将到达某一阈值事件的消息发送给用户,让用户在事件发生的时候即刻知道监控项处于不正常状态,从而让用户来决定是否采取相关措施。
zabbix中,告警是由一系列的流程组成的,⾸首先是触发器到达阈值,接下是Active对事件信息进行处理,其中包括两部分:第一部分是发送消息,即将告警信息发送给用户;第二部分是执行命令,即将事件用命令进行处理,到达对事件故障⾃动尝试恢复的结果。

告警流程

Host Groups(设备组)-> Hosts (设备)-> Applications(监控项组) -> Items(监控项) -> Trigger(触发器) -> Actives (告警动作) -> Medias(告警方式) -> User Groups(用户组) -> Users(用户)

1 系统告警

1.1 设置触发器

先配置一个监控项:

在这里插入图片描述

再配置触发器:

在这里插入图片描述

1.2 设置Action

如果想在产生事件后,即当触发器条件被满足时,采取一些操作,比如,发送事件通知、远程执行命令等,则需要配置Action。

创建一个新的Action,选择触发器:

在这里插入图片描述

设置两个条件之间的关系:

在这里插入图片描述

转到操作选项,添加一个发送消息的操作:

在这里插入图片描述

再添加一个操作,当出现问题时,尝试远程登录到服务器,重启httpd服务

在这里插入图片描述

查看所有的操作

在这里插入图片描述

调整恢复正常后的操作:

在这里插入图片描述

客户端需要允许服务器进行远程操作

[root@client2 ~]# vim /etc/zabbix/zabbix_agentd.conf 

UnsafeUserParameters=1

测试:

[root@client2 ~]# systemctl stop httpd
[root@client2 ~]# clock
2022年07月13日 星期三 16时46分07秒  -0.040396 秒
[root@client2 ~]# systemctl status httpd		# 关掉服务后,过一会儿zabbix将服务重启了
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since 三 2022-07-13 16:46:27 CST; 13s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 5169 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
 Main PID: 5195 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
    Tasks: 6
   CGroup: /system.slice/httpd.service
           ├─5195 /usr/sbin/httpd -DFOREGROUND
           ├─5196 /usr/sbin/httpd -DFOREGROUND
           ├─5197 /usr/sbin/httpd -DFOREGROUND
           ├─5198 /usr/sbin/httpd -DFOREGROUND
           ├─5199 /usr/sbin/httpd -DFOREGROUND
           └─5200 /usr/sbin/httpd -DFOREGROUND

7月 13 16:46:27 client2.test.com systemd[1]: Starting The Apache HTTP Server...
7月 13 16:46:27 client2.test.com httpd[5195]: AH00558: httpd: Could not reliably de...ge
7月 13 16:46:27 client2.test.com systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.
[root@client2 ~]# clock
2022年07月13日 星期三 16时47分03秒  -0.993565 秒

如果觉得使用root权限太大,也可以给zabbix用户赋权限:

[root@client2 ~]# visudo
zabbix  ALL=(ALL)       NOPASSWORD: /etc/init.d/httpd restart

2 设置邮件告警

如果需要使用网络中的邮件服务器,需要先开启SMTP服务,并获取到密码:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1802092.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TCP/IP协议分析实验:通过一次下载任务抓包分析

TCP/IP协议分析 一、实验简介 本实验主要讲解TCP/IP协议的应用,通过一次下载任务,抓取TCP/IP数据报文,对TCP连接和断开的过程进行分析,查看TCP“三次握手”和“四次挥手”的数据报文,并对其进行简单的分析。 二、实…

ElasticSearch学习笔记之一:介绍及EFK部署

1. 系统概述 The Elastic Stack,包括Elasticsearch、Kibana、Beats和Logstash(也成为ELK Stack) Elasticsearch:简称ES,是一个开源的高扩展的分布式全文搜索引擎,是整个Elastic Stack技术栈的核心。它可以…

【MySQL】聊聊MySQL常见的SQL语句阻塞场景

在平时的业务中,可能一个简单的SQL语句也执行很慢,这种情况其实大多数都是要么没有使用索引,要么出现锁竞争造成执行阻塞。本篇主要来介绍具体的场景 CREATE TABLE t ( id int(11) NOT NULL, c int(11) DEFAULT NULL, PRIMARY KEY (id) ) ENG…

用HAL库改写江科大的stm32入门-6-4 PWM驱动舵机

接线图: 如何控制一个舵机 舵机的控制由一个脉冲宽度调制信号(PWM波)来实现,该信号在这个实验里使用stm32来发出。 舵机通讯协议: 对应设置参数: ARR的值为19999 CCR的值为500~2500(生成占空比是2.5%~12.5%的波形)…

[经验] 昆山教育网(昆山教育网中小学报名) #媒体#职场发展#微信

昆山教育网(昆山教育网中小学报名) 昆山教育局网站 网站:昆山市教育局 昆山市教育局全面贯彻执行党和国家的教育方针、政策,落实有关教育工作的法律、法规;负责制定本市教育工作的实施意见和措施,并监督…

Java基础_异常

Java基础_异常 异常体系介绍编译时异常和运行时异常异常的作用异常的处理方式JVM默认的处理方式自己处理(捕获异常)try...catch灵魂四问Throwable的成员方法 抛出处理 综合练习自定义异常来源Gitee地址 异常体系介绍 异常是什么? 程序中可能出…

LabVIEW2017破解安装教程

LabVIEW2017破解安装教程: 1、新版LabVIEW2017分为32位和64位两个平台,多种语言版本(需要LabVIEW2017中文版的朋友请选择WinChn版本),大家选择自行选择符合系统的版本下载并解压 2、本次安装以Win 7 64位系统为例,运行“2017LV-64…

【Vscode配置java环境并配置stringboot】

1.VSCODE配置JAVA环境 参考这篇文章配置JAVA环境:连接 java版本,我是win11系统,我下载的JAVA安装版本是下面,是最新版的: 配置环境:步骤很简单,就是向系统环境变量中添加路径,参考上面文章中的…

AddressSanitizer理论及实践:heap-use-after-free、free on not malloc()-ed address

AddressSanity:A Fast Address Sanity Checker 摘要 对于C和C 等编程语言,包括缓冲区溢出和堆内存的释放后重用等内存访问错误仍然是一个严重的问题。存在许多内存错误检测器,但大多数检测器要么运行缓慢,要么检测到的错误类型有…

【Java】解决Java报错:IllegalArgumentException

文章目录 引言1. 错误详解2. 常见的出错场景2.1 非法的参数值2.2 空值或 null 参数2.3 非法的数组索引 3. 解决方案3.1 参数验证3.2 使用自定义异常3.3 使用Java标准库中的 Objects 类 4. 预防措施4.1 编写防御性代码4.2 使用注解和检查工具4.3 单元测试 结语 引言 在Java编程…

C++笔记之一个函数多个返回值的方法、STL::pair、STL::tuple、STL::tie的用法

C++笔记之一个函数多个返回值的方法、STL::pair、STL::tuple、STL::tie的用法 —— 2024-06-08 杭州 code review! 文章目录 C++笔记之一个函数多个返回值的方法、STL::pair、STL::tuple、STL::tie的用法一.从一个函数中获取多个返回值的方法1. 使用结构体或类2. 使用`std::t…

递归【2】(组合回溯(生成括号)、子集回溯(背包问题))

括号对 (组合型回溯) 分解成子问题,每一次添加括号分两步: if左括号小于n,加左括号,然后k(index1), if左括号大于有括号,加右括号,k(index1),然后收尾括号单独考虑,到…

Spark的开发环境配置

1. 介绍 这里主要记录一下&#xff0c;我们常用的maven配置&#xff0c;方便后期开发配置环境&#xff0c;避免每次都从零开始配置工程。 2. 工程目录 3. pom的配置 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven…

Vue11-键盘事件

一、键盘事件&#xff1a;keydown和keyup事件 keydown 和 keyup 是两种常用于处理键盘输入事件的JavaScript事件。当你在网页的输入框或其他可输入元素上按下或释放键盘上的某个键时&#xff0c;这些事件就会被触发。 1-1、keydown 事件 当用户按下键盘上的某个键时&#xff…

计算机组成原理——浮点加减运算的一道非计算例题

浮点加减运算的一道非计算例题 一、题目 文字描述 例6.31设机器数字长16位&#xff0c;阶码5位&#xff08;含1位阶符&#xff09;&#xff0c;基值为2&#xff0c;尾数11位&#xff08;含1位数符&#xff09;。 对千两个阶码相等的数按补码浮点加法完成后&#xff0c;由于规格…

Linux通过安装包配置环境变量(详细教程)

本章教程使用jdk1.8.0_241版本在Linux CentOS系统中,配置Java环境变量。 一、下载安装包 微云下载:https://share.weiyun.com/JeWZMDoh 二、上传安装包 将安装包上传到linux中的opt目录中 三、解压安装包 tar -xzvf jdk-8u241-linux-x64.tar.gz四、配置环境变量 vim /etc/p…

第6章 字典

第6章 字典 6.1 一个简单的字典6.2 使用字典6.2.1 访问字典中的值6.2.2 添加键值对6.2.3 先创建一个空字典6.2.4 修改字典中的值6.2.5 删除键值对6.2.6 由类似对象组成的字典6.2.7 使用 get()来访问值 6.3 遍历字典6.3.1 遍历所有键值对6.3.2 遍历字典中的所有键 6.3.3 按特定顺…

pytorch之猫狗识别项目

1. 导入资源包 资源包&#xff1a; import torchvision&#xff1a;PyTorch 提供的视觉库&#xff0c;包含了常用的计算机视觉模型架构、数据集以及图像转换工具。 from torchvision import datasets, models&#xff1a;导入 torchvision 中的 datasets 和 models 模块&#…

Anaconda软件:安装、管理python相关包

Anaconda的作用 一个python环境中需要有一个解释器, 和一个包集合. 解释器&#xff1a; 根据python的版本大概分为2和3. python2和3之间无法互相兼容, 也就是说用python2语法写出来的脚本不一定能在python3的解释器中运行. 包集合&#xff1a;包含了自带的包和第三方包, 第三…

Flutter基础 -- Flutter容器布局

目录 1. MaterialApp 1.1 组件定义 1.2 主要功能和属性 1.3 示例 2. 脚手架 Scaffold 2.1 定义 2.2 Scaffold 的属性 2.3 示例 PS: 对于 Scaffold 和 MaterialApp 3. 线性布局 Column Row 3.1 Row 3.2 Column 4. 盒模型 Box Model 4.1 定义 4.2 示例 5. 容器 C…