自定义脚本媒介。zabbix会将信息传递给脚本,接下来你在脚本里面随意处理,一共会传递三个参数,按顺序接受也就是$1,$2,$3了,为了方便记忆,一般分别给他们赋值到ToSubjectody
配置AlertScriptsPath
在server的配置文件中配置,这是用来定义脚本目录,这样一来zabbix就能找到脚本了
1
2
3
4
|
# cat /usr/local/zabbix-2.2.1/etc/zabbix_server.conf | grep AlertScriptsPath
### Option: AlertScriptsPath
AlertScriptsPath=/usr/local/zabbix-2.2.1/alertscripts
# mkdir /usr/local/zabbix-2.2.1/alertscripts
|
创建发邮件脚本
1
2
3
4
5
6
7
8
|
# cat /usr/local/zabbix-2.2.1/alertscripts/mail.sh
#!/bin/sh
to=$1
subject=$2
body=$3
/usr/local/bin/sendEmail -f support@sina.com -t "$to" -s smtp.ttlsa.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu support@sina.com -xp 123456 -m "$body" 2>>/tmp/22.log
# chmod a+x /usr/local/zabbix-2.2.1/alertscripts/mail.sh
|
不一定非要发送邮件,也可以发飞信或者调用短信平台接口
配置自定义脚本媒介
Administration->Media types->创建
参数说明
选项 | 描述 |
Description | 媒介名称,看着起名,这边叫sendEmail |
Type | 选择custom scripts |
Script name | 脚本名称,这边写mail.sh,只要写名称就行了,不要写绝对路径 |
使用自定义脚本媒介
定义好了媒介之后,我们需要把这媒介指定给用户。
Administration->Users->打开用户配置->media type里面添加刚增加的媒介
参数说明
选项 | 描述 |
Type | 选择媒介名称,此处选sendEmail |
Send to | 发邮件给谁,例如support@ttlsa.com |
When active | 发送时间,只有在这个时间段内才会发邮件 |
Use if severity | 发送邮件的触发器级别 |
Status | 当前媒介状态 Enabled - 使用中. Disabled - 禁用中. |