zabbix web配置

模版 定义监控项、触发器、过滤器

定义触发器动作,针对特定的触发条件,发送到对应用户的媒介

定义媒介类型,比如飞书IM,邮件电话等等

定义用户通知的消息,比如飞书的webhook地址,哪个用户对应哪个群聊

触发器

模版 VMware Guest

CPU 使用率超过 90%

min(/VMware Guest/vmware.vm.cpu.usage.perf[{$VMWARE.URL},{$VMWARE.VM.UUID}],5m) >90

内存使用率超过95%

min(/VMware Guest/vmware.vm.memory.usage[{$VMWARE.URL},{$VMWARE.VM.UUID}],5m) > 95

自动发现里面定义 {#FSNAME} 分区磁盘使用率不足10%

| VMware Guest | Mounted filesystem discovery |

max(/VMware Guest/vmware.vm.vfs.fs.size[{$VMWARE.URL},{$VMWARE.VM.UUID},{#FSNAME},pfree],5m) < 10

模版

CPU 使用率超过 90%

min(/zabbix-linux-agent/system.cpu.util,5m) > 90

内存使用率超过 95%

min(/zabbix-linux-agent/vm.memory.utilization,5m)  > 95

| zabbix-linux-agent | Linux by Zabbix agent: Get filesystems: Mounted filesystem discovery |
分区 [{#FSNAME}]: 空间不足90%

min(/Linux by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}

触发器动作

配置24h告警一次,无限循环告警
24h 1-0 0
配置1h告警一次,无限循环高告警
1h 1-0 0
配置1h告警一次,之后不再告警
1h 1-1 0

发送到固定群组

单独配置触发器动作
操作一栏选择哪个主机组,或者哪个主机

媒介

这里参考:https://www.txisfine.cn/archives/471fea0d
飞书webhook定义
To参数即为 webhookurl参数

// To : FeishuBot Key
// Message : {ALERT.MESSAGE}
// HTTPProxy

try {
    var params = JSON.parse(value),
        req = new HttpRequest(),
        response;
    if (params.HTTPProxy) {
        req.setProxy(params.HTTPProxy);
    }

    if (params.Message === 'test') {
        var data = {
            "msg_type": "interactive",
            "card": {
                "type": "template",
                "data": {
                    "template_id": "ctp_AAVPnuaz6F8I",
                    "template_variable": {
                        "event_name": "{EVENT.NAME}",
                        "event_id": "{EVENT.ID}",
                        "event_date": "{EVENT.DATE}",
                        "event_time": "{EVENT.TIME}",
                        "host_name": "{HOST.NAME}",
                        "event_severity": "{TRIGGER.SEVERITY}",
                        "message_url": "",
                        "trigger_name": "{TRIGGER.NAME}",
                        "problem_item_name": "{ITEM.NAME}",
                        "problem_item_value": "{ITEM.VALUE}",
                        "host_ip": "{HOST.IP}",
                        "from": "ZABBIX"
                    }
                }
            }
        };
    } else {
        var data = JSON.parse(params.Message);
    }
    req.addHeader('Content-Type: application/json');
    Zabbix.log(4, '[ FeishuBot WebHook ] Webhook request with value=' + value);
    response = req.post(params.To, JSON.stringify(data));
    Zabbix.log(4, '[ FeishuBot WebHook ] Responded with code: ' + req.getStatus() + '. Response: ' + response);
    try {
        response = JSON.parse(response);
    }
    catch (error) {
        if (req.getStatus() < 200 || req.getStatus() >= 300) {
            throw 'Request failed with status code ' + req.getStatus();
        }
        else {
            throw 'Request success, but response parsing failed.';
        }
    }
    if (req.getStatus() !== 200 || response.msg !== 'success') {
        throw response.msg;
    }
    return 'OK';
}
catch (error) {
    Zabbix.log(3, '[ FeishuBot WebHook ] Sending failed. Error: ' + error);
    throw 'Failed with error: ' + error;
}

消息模版定义

问题

{
  "msg_type": "interactive",
  "card": {
    "type": "template",
    "data": {
      "template_id": "ctp_AAVTQ2mY3Fsz",
      "template_variable": {
        "event_name": "{EVENT.NAME}",
        "event_id": "{EVENT.ID}",
        "event_date": "{EVENT.DATE}",
        "event_time": "{EVENT.TIME}",
        "host_name": "{HOST.NAME}",
        "event_severity": "{TRIGGER.SEVERITY}",
        "message_url": "https://iit-zabbix.anker-in.com/zabbix.php?action=dashboard.view&dashboardid=1",
        "trigger_name": "{TRIGGER.NAME}",
        "problem_item_name": "{ITEM.NAME}",
        "problem_item_value": "{ITEM.VALUE}",
        "host_ip": "{HOST.IP}",
        "from": "ZABBIX"
      }
    }
  }
}

问题恢复

{
  "msg_type": "interactive",
  "card": {
    "type": "template",
    "data": {
      "template_id": "ctp_AAVPnuaz6F8I",
      "template_variable": {
        "event_name": "{EVENT.NAME}",
        "event_id": "{EVENT.ID}",
        "event_date": "{EVENT.DATE}",
        "event_time": "{EVENT.TIME}",
        "host_name": "{HOST.NAME}",
        "event_severity": "{TRIGGER.SEVERITY}",
        "message_url": "https://iit-zabbix.anker-in.com/zabbix.php?action=dashboard.view&dashboardid=1",
        "trigger_name": "{TRIGGER.NAME}",
        "problem_item_name": "{ITEM.NAME}",
        "problem_item_value": "{ITEM.VALUE}",
        "host_ip": "{HOST.IP}",
        "from": "ZABBIX",
        "event_duration": "{EVENT.DURATION}"
      }
    }
  }
}
posted @ 2025-04-09 11:36  jasmine456  阅读(41)  评论(0)    收藏  举报