2022 Zabbix中国峰会
2022 Zabbix中国峰会

5 自定义警报提示

概述

如果您对发送警报的现有媒体类型不满意,则可以使用其他方式来执行此操作。 您可以创建一个将以您的方式处理通知的脚本。

警报脚本在Zabbix服务器上执行。 这些脚本位于服务器配置文件中定义的目录中AlertScriptsPath.

这是一个示例警报脚本:

#!/bin/bash
       
       to=$1
       subject=$2
       body=$3
       
       cat <<EOF | mail -s "$subject" "$to"
       $body
       EOF

<note important>从版本3.4开始,Zabbix检查执行的命令和脚本的退出代码。任何与** 0 **不同的退出代码都被视为命令执行错误. 在这种情况下,Zabbix会尝试重复执行失败。 :::

环境变量不会为脚本保留或创建,因此它们应该被明确处理。

配置

将自定义警报文本配置为媒介类型:

  • 进入 管理 - >媒介类型
  • 点击创建媒介类型

媒介类型属性:

参数 说
Name 输入媒介类型的名称。
Type 选择 Script 作为媒介类型
Script name 输入脚本的名称。
Script parameters 向脚本添加命令行参数。
{ALERT.SENDTO}, {ALERT.SUBJECT} and {ALERT.MESSAGE} 在脚本参数中是支持的
Zabbix 3.0支持自定义脚本参数。

用户媒介

要为用户分配自定义警报提示符:

  • 进入 管理 - >用户
  • 打开用户属性窗体
  • 在媒介选项卡中,单击 Add

用户媒介属性:

参数 说
Type 选择自定义的alertcripts媒介类型.
Send to 指定收件人接收警报。
When active 您可以限制执行警示标记的时间,例如,仅限工作日(1-5,09:00-18:00)。\\格式说明参见时间段规格页面
Use if severity 标记要激活警示标记的触发严重性的复选框。
Status 用户媒介的状态
Enabled - 使用中.
Disabled -禁用.