Tích hợp Zabbix - Cảnh báo hạ tầng
Kết nối Zabbix với Echobell bằng media type webhook và nhận thông báo đẩy hoặc cuộc gọi khi một trigger kích hoạt.
Zabbix là nền tảng giám sát mã nguồn mở cho mạng, máy chủ và ứng dụng. Một media type dạng webhook sẽ đưa cảnh báo của nó tới kênh Echobell.
Tạo kênh
Tạo một kênh mới trong Echobell rồi sao chép Webhook URL của nó.
Tạo media type webhook
Trong Zabbix, vào Alerts → Media types → Create media type, đặt Type là Webhook và đặt tên "Echobell". Thêm các tham số sau:
| Name | Value |
|---|---|
url | {ALERT.SENDTO} |
title | {ALERT.SUBJECT} |
body | {ALERT.MESSAGE} |
host | {HOST.NAME} |
severity | {EVENT.SEVERITY} |
status | {EVENT.VALUE} |
Dán đoạn script
Dán đoạn này vào ô Script:
var params = JSON.parse(value),
req = new HttpRequest();
req.addHeader('Content-Type: application/json');
var response = req.post(params.url, JSON.stringify({
title: params.title,
body: params.body,
host: params.host,
severity: params.severity,
status: params.status
}));
if (req.getStatus() !== 200) {
throw 'Echobell returned HTTP ' + req.getStatus() + ': ' + response;
}
return 'OK';Gán media cho một người dùng
Vào Users → Users, mở người dùng cần nhận cảnh báo, và ở thẻ Media thêm một mục với Type là Echobell và Send to là URL webhook của kênh.
Tạo trigger action
Vào Alerts → Actions → Trigger actions và thêm một action có thao tác gửi tin nhắn tới người dùng đó qua media type Echobell.
Chỉ báo khi có sự cố
Zabbix gửi cả sự kiện sự cố lẫn sự kiện phục hồi. {EVENT.VALUE} bằng 1 khi có sự cố và 0 khi phục hồi, nên hãy đặt điều kiện này cho kênh để phục hồi không làm ồn:
status == "1"
Dùng một kênh thứ hai với status == "0" nếu bạn muốn nhận thông báo phục hồi ở mức khẩn thấp hơn.