未知存储空间:交换空间:nagios中的错误

时间:2015-08-20 06:43:19

标签: snmp nagios

我们在Linux上运行Nagios服务器,其中一台主机在Linux上运行。

当我尝试手动运行命令以使用SNMP获取交换空间的信息时,我得到输出,但它没有反映在仪表板上。

有人能帮助我吗?

供您参考,请查看手动运行命令的输出。 check_snmp_swap.pl -H IP Address -C public -m -w 80 -c 90

Swap Space: 0%used(26MB/95998MB) /data: 0%used(188MB/129704MB) Real  
Memory: 16%used(10263MB/64444MB) /: 62%used(30070MB/48432MB) Memory   
Buffers: 0%used(239MB/64444MB) (<80%) : OK  

但是在仪表板中,我无法仅查看交换空间的状态,但我能够看到CPU和RAM的状态。

1 个答案:

答案 0 :(得分:0)

检查check_snmp_swap的服务定义。确保该服务已注册,这意味着您在服务定义中设置了register 1

例如:

define service{
    host_name       check_snmp_swap
    service_description check-swap
    check_command       check_snmp_swap!public!80!90
    max_check_attempts  5
    check_interval  5
    retry_interval  3
    check_period        24x7
    notification_interval   30
    notification_period 24x7
    notification_options    w,c,r
    contact_groups      linux-admins
    register    1
}

同时检查check_snmp_swap的命令定义。确保将正确的社区字符串传递给命令 - 在本例中为public

修改

根据您在评论中发布的配置信息,我认为您对服务定义服务模板定义感到困惑。 您好像发布了一个模板 - 作为模板,应该register值设置为0以表明它是模板。

现在实际服务定义可以从服务模板继承一些设置。这样做的目的是使您不必在创建服务定义时反复重新输入相同的信息。 您可以通过在服务定义中明确定义这些设置来覆盖从服务模板继承的设置。

您应该创建一个如下所示的服务定义:

define service{
    host_name       check_snmp_swap
    use             generic-service
    service_description check-swap
    check_command       check_snmp_swap
    max_check_attempts  5
    check_interval  10
    retry_interval  2
    check_period        24x7
    notification_interval   30
    notification_period 24x7
    notification_options    w,u,c,r
    contact_groups      admins
    register    1
}

然后重启你的nagios服务:

service nagios restart