zabbix告警
Leo
59 次阅读
飞书端创建群聊及机器人







Webhook可以使用zbx_export_mediatypes.xml文件导入,已配置完成,也可以新建

新建Webhook_feishu




# 问题
# 标题
服务器:{HOST.NAME} - 发生: {TRIGGER.NAME}故障
# 消息
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}
# 问题恢复
# 标题
服务器:{HOST.NAME} - 发生: {TRIGGER.NAME}已恢复
# 消息
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}


try { // 实例化参数
var params = JSON.parse(value),
req = new HttpRequest(),
msg = {
"msg_type": "post",
"content": {
"post": {
"zh-CN": {
"title": params.Subject,
"content": [
[
{
"tag": "text",
"text": params.Message
},
]
]
}
}
}
},
resp; // 判断是否需要配置HTTP代理
if (params.HTTPProxy) {
req.setProxy(params.HTTPProxy);
} // 添加header头变量
req.addHeader('Content-Type: application/json'); // 发送HTTP Post请求,格式:req.post(url, data)
resp = req.post(params.To, JSON.stringify(msg)
); // 判断HTTP请求返回的状态码,非200则抛出异常
if (req.getStatus() != 200) { throw 'Response code: ' + req.getStatus();
} // 返回响应结果
resp = JSON.parse(resp); return JSON.stringify(resp);
}catch (error) { throw 'Failed with error: ' + error;
}
创建用户



