• Zabbix自动发现规则


       今天介绍一下Zabbix的自动发现规则,自定义监控项是自定义发现规则的基础,需要用户自定义脚本和键值。

      为什么我们需要自动发现规则呢?是因为很多监控项监控的内容一样,但是监控的对象不一样,自动发现规则可以方便我们添加这些监控项。以系统自带的发现规则(监控磁盘、网口和服务等)举例,磁盘、网口、服务数量都是变动的的,每台服务器都有可能不一样,但是要监控的内容都一样,比如磁盘的剩余空间,服务的状态等。

      那么我们用到发现规则的地方是 监控机台产生的error_log文件修改时间有没有改变,如果改变了,说明机台有error。但是机台数量很多,一台一台的添加监控项很枯燥,偷懒一下,用自动发现规则来添加监控项吧~

    参考文档:

    1. zabbix监控数据库表空间大小

    2. Zabbix之Python脚本端口自动发现

    3. Zabbix添加自定义监控项(一)

    4. zabbix discovery / zabbix 自动发现

    这4篇博客都是关于自动发现的脚本和案例。
    自定义监控项/发现规则需要在Zabbix Agent的config档定义键,以及键对应的可执行脚本,然后在web上给被监控Server设置该键为监控项/发现规则。
    注意Zabbix的自动发现功能获取的数据类型是JSON格式的,所以我们要输出JSON格式的字符串,Server才能识别。
    
    博客1监控数据库表空间的大小;
    博客2监控端口;
    博客3监控磁盘IO使用率;
    博客4监控是否存在丢包行为。

    1. Python JSON

    2. python对json的操作总结

    3. Json概述以及python对json的相关操作(转)

    上文提到,“Zabbix的自动发现功能获取的数据类型是JSON格式的”,而且我们使用Python开发脚本,所以上述三篇博客是关于Python的Json库使用介绍。

    参考上述文档,即可写出自己的脚本,修改agent的config。然后在服务器上添加自动发现规则。截图附下。

    添加自动发现规则

    设置过滤器,过滤器是在脚本中上报的键,比如,我们脚本上报的是机台EQPT,注意,格式{#EQPT}

    添加监控项并设置触发器,注意使用上图设置的过滤器

      以上,即实现了自动发现规则的创建添加。

       

      小提示,如果脚本是用Python写的,跑在windows上,应该在脚本前面加上Python的可执行路径,比如我的脚本前面加了如下语句

    #! C:UserslqAppDataLocalProgramsPythonPython37python
    # -*- coding: utf-8 -*-

      网上大部分脚本都是跑在Linux上面,所以前面加的是“#!/usr/bin/python”,但是windows上Python的可执行路径不是这个~

  • 相关阅读:
    web 4.0规范畅想
    统计图(折线,饼图等)避免多个统计图显示冲突
    轮播每页显示4条数据(待写)
    2022年目标
    WSL安装mpich 3.4.2
    an error ocurred during local report processing
    一个winform中多线程的例子
    INSERT INTO 语句的语法错误
    MVC学习笔记
    去掉vsto生成的任务窗格
  • 原文地址:https://www.cnblogs.com/lq67/p/11349342.html
Copyright © 2020-2023  润新知