zabbix6.4告警配置(短信告警和邮件告警),脚本触发

目录

  • 一、前提
  • 二、告警配置
    • 1.邮件告警脚本配置
    • 2.短信告警脚本配置
    • 3.zabbix添加报警媒介
    • 4.zabbix创建动作
    • 4.给用户添加报警媒介

一、前提

  1. 已经搭建好zabbix-server
    在这里插入图片描述
  2. 在需要监控的mysql服务器上安装zabbix-agent2
    在这里插入图片描述
    上述安装步骤参考我的上篇文章:通过docker容器安装zabbix6.4.12图文详解(监控服务器docker容器)

二、告警配置

1.邮件告警脚本配置

  1. 进入zabbix-server-mysql容器内部
docker exec -it zabbix-server-mysql bash
  1. 进入zabbix-server-mysql容器中存放脚本文件的文件夹
cd /usr/lib/zabbix/alertscripts
  1. 在该文件夹下创建.sh的脚本文件
vi sendmail.sh 

如图所示:
在这里插入图片描述

  1. 添加脚本内容。注,该文件运行的时候在容器内部,不能使用curl调用url接口,需要使用wget

脚本内容如下:

#!/bin/bash  ## 指定脚本文件使用bash解释器来执行

send_email() {
    mail_address=$1
    title=$2
    content=$3
    ##这里修改成你自己的邮件api接口
    url='http://xxx.xxx.xxx.xxx:xxxx/ITExceptionV1/SendMail/SendToMail' 
    data="{\"mailAddress\": \"$mail_address\", \"toTitle\": \"$title\", \"toInfo\": \"$content\"}"

    echo $data > temp.json
    response=$(wget -qO- --post-file=temp.json $url)

    if [ $? -eq 0 ]; then
        echo 'SUCCESS'
    else
        echo 'response.status_code=' $?
        echo 'FAIL'
    fi

    rm temp.json
}

if [ "$#" -ne 3 ]; then
    echo "Usage: $0 <mail_address> <title> <content>"
else
    mail_address=$1
    title=$2
    content=$3
    send_email $mail_address "$title" "$content"
fi

  1. 添加完成后 :wq保存退出,并给文件赋予权限,文件才能运行,这边直接给文件赋予执行权限
chmod +x /usr/lib/zabbix/alertscripts/sendmail.sh  #文件赋予执行权限
  1. 执行文件测试,看是否能收到邮件。能收到邮件说明脚本没有问题
./sendmail.sh  xxx@xxx.com "email title" "email content"

2.短信告警脚本配置

前面步骤跟邮件告警一样,参考上文内容,下面直接从创建脚本开始。

  1. 进入zabbix-server-mysql容器中存放脚本文件的文件夹alertscripts创建一个脚本文件sendSMS.sh
vi sendSMS.sh
  1. 添加脚本内容如下。
#!/bin/bash

send_sms() {
	## 替换成你自己的短信api接口
    url='http://xxx.xx.xxx.xxx/api/ms/dm/sms/send'
    content=$(urlencode "$1")
    phone_number=$(urlencode "$2")
    smsPsw='7121@byd'
    smsUid='7121'

    response=$(wget -qO- "$url?content=$content&nodeld=2&phoneNumber=$phone_number&smsPsw=$s

    if [ $? -eq 0 ]; then
        echo 'SUCCESS'
    else
        echo 'FAIL'
    fi
}

urlencode() {
    # ...... awk ...... URL ......
    echo -n "$1" | awk '{ gsub(/[^a-zA-Z0-9\/:._-]/, c); print }'
}

if [ "$#" -ne 2 ]; then
    echo "Usage: $0 <phone_number> <message>"
else
    phone_number=$1
    message=$2
    send_sms "$message" $phone_number
fi
  1. 然后执行以下命令进行测试,能收到短信表示脚本无问题
./sendSMS.sh 181XXXXX "message content"

在这里插入图片描述

3.zabbix添加报警媒介

  1. 告警——媒介——创建媒介类型
    在这里插入图片描述

1 )邮件配置

名称:随意填写

类型:脚本

脚本名称:填写你刚才创建的脚本名称

脚本参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

在这里插入图片描述

2)短信配置
名称:随意填写

类型:脚本

脚本名称:填写你刚才创建的脚本名称

脚本参数
{ALERT.SENDTO}
{ALERT.MESSAGE}

在这里插入图片描述

如下表示创建成功:
在这里插入图片描述

4.zabbix创建动作

以下只介绍邮件告警动作配置,短信动作配置同理,选择不同的报警媒介即可。

  1. 告警——动作——触发器动作——创建动作
    在这里插入图片描述

1)动作配置
名称:随意
条件:根据自己的需求添加,比如选择“主机群组”等于“zabbix servers”的主机(群组是在配置主机时添加的)

在这里插入图片描述

2)操作配置
(1)操作

  • 点击添加
  • 选择发送的用户组和用户
  • 仅送到:选择刚刚创建的报警媒介
  • 勾选自定义消息类型内容

主题添加如下内容:

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

消息添加如下内容:

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

在这里插入图片描述

(2)恢复操作

  • 点击添加
  • 选择发送的用户组和用户
  • 仅送到:选择刚刚创建的报警媒介
  • 勾选自定义消息类型内容
    主题添加如下内容:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

消息添加如下内容:

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

在这里插入图片描述

4.给用户添加报警媒介

  1. 用户——用户——点击需要添加报警媒介的用户——报警媒介——添加——选择对应的报警媒介类型——收件人:邮箱号或手机号,点击添加即可
    在这里插入图片描述
  2. 给用户添加邮件报警
    在这里插入图片描述
  3. 给用户添加短信报警

在这里插入图片描述

在仪表盘页面如果出现zabbix监控到服务器出现问题,则会触发邮件告警和短信告警动作,正常发送会显示绿色,如果没发送成功则是红色。

在这里插入图片描述

如下为收到告警邮件:

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WEP、WPA、WPA2 和 WPA3:区别和说明

无线网络安全是保持在线安全的一个重要因素。通过不安全的链路或网络连接到互联网是一种安全风险&#xff0c;可能会导致数据丢失、帐户凭据泄露&#xff0c;以及他人在您的网络上安装恶意软件。必须使用适当的 Wi-Fi 安全措施 - 但在这样做时&#xff0c;也必须了解不同的无线…

[Linux初阶]常见的指令

我们学Linux指令&#xff0c;其实就是和学windows一样&#xff0c;学习Linux的操作 一、Linux下基本指令 ls 指令 语法 &#xff1a; ls [ 选项 ] [ 目录或文件 ] 功能 &#xff1a;对于目录&#xff0c;该命令列出该目录下的所有子目录与文件。对于文件&#xff0c;将列出…

就业班 第三阶段(负载均衡) 2401--4.19 day3

二、企业 keepalived 高可用项目实战 1、Keepalived VRRP 介绍 keepalived是什么keepalived是集群管理中保证集群高可用的一个服务软件&#xff0c;用来防止单点故障。 ​ keepalived工作原理keepalived是以VRRP协议为实现基础的&#xff0c;VRRP全称Virtual Router Redundan…

装饰模式【结构型模式C++】

1.概述 装饰模式是一种结构型设计模式&#xff0c; 允许你通过将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为。 2.结构 抽象构件&#xff08;Component&#xff09;角色&#xff1a;定义一个抽象接口以规范准备接收附加责任的对象。具体构件&#xff08;Concrete…

Adobe Illustrator 2024 v28.4.1 (macOS, Windows) - 矢量绘图

Adobe Illustrator 2024 v28.4.1 (macOS, Windows) - 矢量绘图 Acrobat、After Effects、Animate、Audition、Bridge、Character Animator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、Lightroom Classic、Media Encoder、Photoshop、Premiere Pro、Adobe XD 请…

穿越代码迷雾:解密Tracing技术的神奇力量

穿越代码迷雾&#xff1a;解密Tracing技术的神奇力量 在软件开发和性能优化领域&#xff0c;追踪&#xff08;Tracing&#xff09;技术是一种重要的工具&#xff0c;用于收集和分析程序的执行过程和性能数据。本文将深入讲解Tracing的原理、工作方式以及在不同领域的应用场景&a…

sql题目练习

cookie注入 解题思路和之前的整数型注入一样&#xff0c;只是比整数型注入多了一步&#xff0c;题目没有给输入框&#xff0c;提示“尝试找找cookie吧”cookie的中文翻译是曲奇&#xff0c;小甜饼的意思。cookie其实就是一些数据信息&#xff0c;类型为“小型文本文件”&#…

【笔试强训】day10

1.最长回文子串 思路&#xff1a; 常规思路就是dp。dp[i][j]表示字符串i-j是否是回文子串。 如果A[i]A[j]&#xff0c;考虑以下几种情况&#xff1a; 长度小于3&#xff0c;说明一定是回文。 要想让dp[i][j]为真&#xff0c;则dp[i1][j-1]必须也为真。否则就是false.即dp[i…

【亲测有效】connection refused报错 为什么redis 进程突然挂掉,频繁出现redis 进程突然挂掉情况解决方案

linux服务器redis 进程突然挂掉&#xff0c;频繁出现redis 进程突然挂掉情况解决方案&#xff0c;出现connection refused报错 前期出现过几次没当回事&#xff0c;但是最近频繁出现甚至有事&#xff0c;一天出现好几次就排查了一下问题 redis 进程突然挂掉常见原因 内存不足…

【后端】git与python的结合使用

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、git介绍二、git常见使用三、git与python的结合使用四、总结 前言 随着开发语言及人工智能工具的普及&#xff0c;使得越来越多的人会主动学习使用一些开发…

ctfshow web41-web50

web41 代码审计 <?php if(isset($_POST[c])){$c $_POST[c]; if(!preg_match(/[0-9]|[a-z]|\^|\|\~|\$|\[|\]|\{|\}|\&|\-/i, $c)){eval("echo($c);");} }else{highlight_file(__FILE__); } ?> 过滤了&#xff1a;[0-9] [a-z] ^ ~ $ [ ] { } & -…

介绍一个开源IOT组态项目

项目介绍 金合可视化平台是一款强大而操作简便的低代码平台&#xff0c;专为满足物联网领域的可视化开发需求而设计。通过该平台&#xff0c;用户可以利用拖拽配置的方式&#xff0c;轻松创建个性化的可视化大屏&#xff0c;无需熟练的编程技能&#xff0c;大幅提高了开发效率。…

报错import build constraints exclude all Go files in

好久没用fyne突然报错 报错import ...go-gl.. build constraints exclude all Go files in go-gl .. 检查gcc --version正常输出 检查gcc版本正常&#xff0c;路径正常。 尝试解决的方法&#xff0c; 1.重新安装依赖&#xff0c;不行 2.重新配置下载地址&#xff0c;不…

制作github.io学术个人主页

制作如图的学术个人主页。About me - Xianwen Ling’s Blog 学术个人主页是一个学者展示个人学术成果和研究方向的重要工具。个人主页可以集中展示学者的研究论文、出版物、演讲和发布的项目等学术成果&#xff0c;这样其他人可以更方便地了解和评估学者的研究贡献。个人主页可…

基于uni-app的动态表单

一、应用场景和意义 可以通过配置字段和校验规则&#xff0c;快速完成页面开发、提升开发效率 二、应用前提 形成ui/业务规范&#xff0c;最好是应用在问卷调查之类的业务 三、动态表单的功能 字段报错、快速滚动定位报错信息、支持字段值和字段规则拆分&#xff0c;便于实…

Linux安装Matlab运行时

一般而言&#xff0c;安装Matlab的linux系统是带桌面版的&#xff0c;如果没带&#xff0c;不在本教程范围内。 一、下载Matlab 下载地址&#xff1a;MATLAB Runtime - MATLAB Compiler - MATLAB 本教程使用R2020b(9.9) 二、linux系统中进行解压 将zip传入linux系统&#xf…

微电子领域常见概念(八)靶材

微电子领域常见概念&#xff08;八&#xff09;靶材 靶材是用于物理气相沉积&#xff08;PVD&#xff09;技术中的一种关键材料&#xff0c;它在制备薄膜的过程中起到至关重要的作用。PVD技术包括多种不同的工艺&#xff0c;如磁控溅射、离子束溅射、分子束外延&#xff08;MBE…

Vue:vue的工程化

Vue前端工程化 前后端分离开发 即前端人员开发前端工程,将开发好的前端工程打包部署在前端服务器上 后端开发人员开发后端工程,再将后端工程打包部署在后端服务器上,这种模式称为前后端分离开发 而前后端要顺利对接的关键就是要遵循一定的开发规范 开发规范 这种开发规范定…

CCF区块链会议--Middleware 2024 截止5.24 附录用率

会议名称&#xff1a;Middleware CCF等级&#xff1a;CCF B类会议 类别&#xff1a;软件工程/系统软件/程序设计语言 录用率&#xff1a;2022年录用率38%&#xff08;8/21&#xff09; Topics of Interest The Middleware conference seeks original submissions of resear…

LAMP(Linux+Apache+MySQL+PHP)环境介绍、配置、搭建

LAMP(LinuxApacheMySQLPHP)环境介绍、配置、搭建 LAMP介绍 LAMP是由Linux&#xff0c; Apache&#xff0c; MySQL&#xff0c; PHP组成的&#xff0c;即把Apache、MySQL以及PHP安装在Linux系统上&#xff0c;组成一个环境来运行PHP的脚本语言。Apache是最常用的Web服务软件&a…