目前网络上已经有很多关于Zabbix如何推送告警信息到钉钉机器人、到邮件等文章。
但是在搜索下来,发现缺少了对告警信息的美化的文章。
本文不赘述如何对Zabbix对接钉钉、对接邮件,仅介绍我采用的美化消息模板的内容。
活用AI工具可以减轻很多学习、脑力负担。本文采用了与deepSeek、Chatgpt-4o两款模型对话,最后给出了如下的美化内容。
环境
Zabbix 7.0
邮箱 163.com
钉钉 Webhook
钉钉Webhook机器人
markdown格式可以被识别
linux与windows的差异吧,必须每行中间多一个换行
问题
Python
### ⚠️ Zabbix 告警通知 - 问题触发
**告警名称**: {EVENT.NAME}
**主机名称**: {HOST.NAME}
**主机 IP**: {HOST.IP}
**告警时间**: {EVENT.DATE} {EVENT.TIME}
**告警级别**: {TRIGGER.SEVERITY}
**当前状态**: 告警中
**告警详情**: {ITEM.VALUE}
**触发条件**: {TRIGGER.EXPRESSION}
**事件 ID**: {EVENT.ID}
请及时处理此告警。
问题恢复
Python
### ✅ Zabbix 告警通知 - 问题恢复
**告警名称**: {EVENT.NAME}
**主机名称**: {HOST.NAME}
**主机 IP**: {HOST.IP}
**恢复时间**: {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
**告警级别**: {TRIGGER.SEVERITY}
**当前状态**: 已恢复
**恢复详情**: {ITEM.VALUE}
**触发条件**: {TRIGGER.EXPRESSION}
**事件 ID**: {EVENT.ID}
问题已恢复,请确认系统状态。
效果
邮件告警
这里美化采用的是HTML,所以在报警媒介类型中,将消息格式改为HTML
问题
Python
Zabbix 告警通知 - 问题触发
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;
}
⚠️ 告警通知 - 问题触发
项目
详情
告警名称
{EVENT.NAME}
主机名称
{HOST.NAME}
主机 IP
{HOST.IP}
告警时间
{EVENT.DATE} {EVENT.TIME}
告警级别
{TRIGGER.SEVERITY}
当前状态
告警中
告警详情
{ITEM.VALUE}
触发条件
{TRIGGER.EXPRESSION}
事件 ID
{EVENT.ID}
请及时处理此告警。
问题恢复
Python
Zabbix 告警通知 - 问题恢复
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;
}
✅ 告警通知 - 问题恢复
项目
详情
告警名称
{EVENT.NAME}
主机名称
{HOST.NAME}
主机 IP
{HOST.IP}
恢复时间
{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
告警级别
{TRIGGER.SEVERITY}
当前状态
已恢复
恢复详情
{ITEM.VALUE}
触发条件
{TRIGGER.EXPRESSION}
事件 ID
{EVENT.ID}
问题已恢复,请确认系统状态。