Zabbix 推送告警 消息模板 美化(钉钉Webhook机器人、邮件)

目前网络上已经有很多关于Zabbix如何推送告警信息到钉钉机器人、到邮件等文章。

但是在搜索下来,发现缺少了对告警信息的美化的文章。

本文不赘述如何对Zabbix对接钉钉、对接邮件,仅介绍我采用的美化消息模板的内容。

活用AI工具可以减轻很多学习、脑力负担。本文采用了与deepSeek、Chatgpt-4o两款模型对话,最后给出了如下的美化内容。

环境

Zabbix 7.0

邮箱 163.com

钉钉 Webhook

钉钉Webhook机器人

markdown格式可以被识别

linux与windows的差异吧,必须每行中间多一个换行

问题

json 复制代码
### ⚠️ Zabbix 告警通知 - 问题触发

**告警名称**: {EVENT.NAME}

**主机名称**: {HOST.NAME}

**主机 IP**: {HOST.IP}

**告警时间**: {EVENT.DATE} {EVENT.TIME}

**告警级别**: <font color='red'>{TRIGGER.SEVERITY}</font>

**当前状态**: <font color='red'>告警中</font>

**告警详情**: {ITEM.VALUE}

**触发条件**: {TRIGGER.EXPRESSION}

**事件 ID**: {EVENT.ID}

请及时处理此告警。

问题恢复

javascript 复制代码
### ✅ Zabbix 告警通知 - 问题恢复

**告警名称**: {EVENT.NAME}

**主机名称**: {HOST.NAME}

**主机 IP**: {HOST.IP}

**恢复时间**: {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}

**告警级别**: <font color='green'>{TRIGGER.SEVERITY}</font>

**当前状态**: <font color='green'>已恢复</font>

**恢复详情**: {ITEM.VALUE}

**触发条件**: {TRIGGER.EXPRESSION}

**事件 ID**: {EVENT.ID}

问题已恢复,请确认系统状态。

效果


邮件告警

这里美化采用的是HTML,所以在报警媒介类型中,将消息格式改为HTML

问题

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Zabbix 告警通知 - 问题触发</title>
    <style>
        body {
            font-family: Arial, sans-serif;
        }
        .alert {
            background-color: #FFCCCC; /* 告警背景色 */
            padding: 10px;
            border-radius: 5px;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 10px;
        }
        th, td {
            padding: 8px;
            text-align: left;
            border-bottom: 1px solid #ddd;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>

    <div class="alert">
        <h2>⚠️ 告警通知 - 问题触发</h2>
    </div>

    <table>
        <tr>
            <th>项目</th>
            <th>详情</th>
        </tr>
        <tr>
            <td>告警名称</td>
            <td>{EVENT.NAME}</td>
        </tr>
        <tr>
            <td>主机名称</td>
            <td>{HOST.NAME}</td>
        </tr>
        <tr>
            <td>主机 IP</td>
            <td>{HOST.IP}</td>
        </tr>
        <tr>
            <td>告警时间</td>
            <td>{EVENT.DATE} {EVENT.TIME}</td>
        </tr>
        <tr>
            <td>告警级别</td>
            <td>{TRIGGER.SEVERITY}</td>
        </tr>
        <tr>
            <td>当前状态</td>
            <td>告警中</td>
        </tr>
        <tr>
            <td>告警详情</td>
            <td>{ITEM.VALUE}</td>
        </tr>
        <tr>
            <td>触发条件</td>
            <td>{TRIGGER.EXPRESSION}</td>
        </tr>
        <tr>
            <td>事件 ID</td>
            <td>{EVENT.ID}</td>
        </tr>
    </table>

    <p>请及时处理此告警。</p>

</body>
</html>

问题恢复

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Zabbix 告警通知 - 问题恢复</title>
    <style>
        body {
            font-family: Arial, sans-serif;
        }
        .recovery {
            background-color: #CCFFCC; /* 恢复背景色 */
            padding: 10px;
            border-radius: 5px;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 10px;
        }
        th, td {
            padding: 8px;
            text-align: left;
            border-bottom: 1px solid #ddd;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>

    <div class="recovery">
        <h2>✅ 告警通知 - 问题恢复</h2>
    </div>

    <table>
        <tr>
            <th>项目</th>
            <th>详情</th>
        </tr>
        <tr>
            <td>告警名称</td>
            <td>{EVENT.NAME}</td>
        </tr>
        <tr>
            <td>主机名称</td>
            <td>{HOST.NAME}</td>
        </tr>
        <tr>
            <td>主机 IP</td>
            <td>{HOST.IP}</td>
        </tr>
        <tr>
            <td>恢复时间</td>
            <td>{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}</td>
        </tr>
        <tr>
            <td>告警级别</td>
            <td>{TRIGGER.SEVERITY}</td>
        </tr>
        <tr>
            <td>当前状态</td>
            <td>已恢复</td>
        </tr>
        <tr>
            <td>恢复详情</td>
            <td>{ITEM.VALUE}</td>
        </tr>
        <tr>
            <td>触发条件</td>
            <td>{TRIGGER.EXPRESSION}</td>
        </tr>
        <tr>
            <td>事件 ID</td>
            <td>{EVENT.ID}</td>
        </tr>
    </table>

    <p>问题已恢复,请确认系统状态。</p>

</body>
</html>

效果


相关推荐
平原君20884 小时前
利用LLM控制机器人的原理
机器人
鲁邦通物联网5 小时前
架构实战:基于有限状态机的机器人自主乘梯全流程设计与 Python 实现
机器人·机器人梯控·agv梯控·非侵入式采集·机器人乘梯·机器人自主乘梯·agv机器人梯控
PNP Robotics6 小时前
领军军者|PNP机器人包文涛:以具身智能定义机器人的“生命直觉”
人工智能·深度学习·学习·机器学习·机器人
2601_958320576 小时前
【小白易懂版】OpenClaw 飞书机器人绑定配置详细教程(含安装包)
人工智能·机器人·飞书·open claw·小龙虾·open claw安装
sheji1057 小时前
人形机器人行业市场分析报告
人工智能·机器人·智能硬件
Deepoch9 小时前
Deepoc 具身模型开发板在田间除草机器人自主作业中的技术应用
人工智能·机器人·具身模型·deepoc·除草机器人
沫儿笙10 小时前
安川机器人焊接节气装置
人工智能·机器人
xwz小王子11 小时前
Yunzhu Li:结构化世界模型与触觉感知Scaling扩展机器人操纵能力
机器人·触觉
程序员差不多先生11 小时前
Openvela+ 瑞芯微+DeepSeek 桌面机器人实战评测
机器人·瑞芯微·deepseek·openvela·桌面机器人
云中计算巫作坤11 小时前
泛微OA,该不该扔?
钉钉·飞书·企业数字化·泛微oa