我不确定这是否可行,但我想设置例外情况,Nagios 不会报告一些检查。
例如,在我们的一台服务器上,其中一个 RAM 组件坏了,而且已经坏了一段时间了。我们不会修复它,因为它实际上不会影响服务器的任何工作。但是,该通知位于 nagios 的“未处理”服务页面上。
有没有办法创建“异常”以便我们看不到这个错误或者它位于不同的位置?
答案1
找到答案,
解决方法就是“承认”错误。
如果我们“确认”错误,那么该错误将从“未处理”中删除以进行确认。
怎么做
单击错误通知>当它带您到右侧的详细信息页面时,您应该在此处看到“服务命令”,您应该看到“确认此错误”
答案2
如果您仍希望能够看到检查,可以使用服务信息页面上的“确认此服务问题”选项 - 这将使其不再显示在“问题 > 服务(未处理)”页面上,但仍会显示在“问题 > 服务”页面上。如果/当服务恢复正常状态时,它将从“问题 > 服务”中消失,确认和评论将被删除(当然,除非您将评论设置为持久性),并且下次它变为“警告”、“严重”或“未知”状态时,它将出现在“问题 > 服务(未处理)”页面上。
就我个人而言,我建议仅对暂时性问题使用确认;如果是针对您永远无法修复的问题,最好通过在指令中的名称前使用感叹号将此主机排除在服务检查定义之外host_name
(或者您可以设置一个主机组并在指令中在其前面放置一个感叹号,hostgroup_name
如果您想排除很多服务器)。
在这个例子中,服务检查将适用于主机组,dell-servers
但不适用于主机组中的服务器non-esxi-servers
(并且它还将排除主机server01
,server02
我们假设这些主机也在dell-servers
主机组中)。
define service{
use generic-service
service_description ESXI Service
host_name !server01,!server02
hostgroup_name dell-servers,!non-esxi-servers
}