我使用zabbix来监控AWS中的某些Windows服务器。
Windows自动发现系统将在Zabbix中创建许多项目和触发器。
我试图禁用所有这些,只保留2个项目。他们
服务“Dhcp”(DHCP客户端)未运行(启动类型自动)
服务“MpsSvc”(Windows防火墙)未运行(启动类型自动)
但过了一会儿,有很多项目就像 服务“OneSyncSvc_xxxxxxx”(同步主机_xxxxxxx)未运行(启动类型自动延迟) 我也禁用了它们,然后一些带有↑结构的项目进来了。 如果我禁用Windows发现系统,我担心上述两个项目也不会起作用。
有没有办法解决这个问题?
答案 0 :(得分:1)
您发现的大多数zabbix模板都是最好的例子;一个组织需要监控的内容通常与另一个组织完全不同。对于您正在处理的低级别发现尤其如此。
最好的方法是找到模板,看看它是如何生成LLD项目的。有许多方法可以完成,从脚本到zabbix遍历SNMP项目或代理项目。无论如何,每个都有一个发现定义(配置,模板,发现规则)。在第二个选项卡上是"过滤器"页。在那里,您可以创建一组允许(或不允许)发现的逻辑条件。
作为一个简单的例子,我有一个我不想要的接口的名称模式列表,例如"未路由的VLAN"或" StackSub"。如果找到这些名称,则不会发现该项目。如果您有多个具有类似列表的模板,请将列表放在正则表达式中(“管理”,“常规”,“正则表达式”)。注意匹配感(包含/排除),您可以在正则表达式页面(第二个选项卡)中测试它们。
换句话说,你真正想要处理它的方式根本就是不要发现它们,而不是事后处理它们。
请注意,在" Keep lost resources period(以天为单位)"关于发现规则。在更改过滤器以将其设置为大于0的情况时,明智的做法是查看设备的项目以查看哪些未被发现和被删除(如果我记得的话,它们会出现橙色感叹号 - 某种标志并将鼠标悬停在它上面并解释)。
如果您的需求比静态过滤器可以确定的更复杂,您可以编写发现本身的脚本,并在脚本中使用逻辑来决定需要什么和不需要什么,但显然实现起来要复杂得多。 / p>