Unix上的SNMP陷阱

时间:2012-02-27 10:25:25

标签: snmp

差不多6天我试图解决这个问题。

我有2台机器。其中一个是经理10.201机器,另一个是代理(10.226)

我已经像这样配置了 manager的snmptrap.conf 文件。

authCommunity  execute  public      default  .1
traphandle  default /usr/bin/traptoemail -s localhost -f snmp@localhost root@localhost

然后我像这样配置了代理的snmpd.conf文件。

###########################################################################
# SECTION: Access Control Setup

rocommunity  public  
rwcommunity  private



###########################################################################
# SECTION: System Information Setup

syslocation  "Izmir, 226. machine "
syscontact  info@abc.com

###########################################################################
# SECTION: Trap Destinations

trap2sink  10.0.0.201  162

authuser   read -s v2c guest_user noauth  .1
authuser   read -s usm guest_user noauth  .1
authcommunity read  public  default .1
iquerySecName guest_user
agentSecName  guest_user

monitor   -u guest_user  -r  1  "interface down" -o ifDescr ifOperStatus != 1

但我想陷入代理机器的CPUIdle速率。例如,我可以通过snmpwalk命令以这种方式获取CpuIdle。

# snmpwalk -v 2c  -c public 10.0.0.226 .iso.org.dod.internet.private.enterprises.ucdavis.systemStats.**ssCpuIdle**.0

*我想在座席(10.0.0.226)* ssCPuIdle率超过98时陷入经理主持人(10.0.0.201)。 *

有没有人可以帮助我?我在哪里犯过错误,conf文件或其他什么?

1 个答案:

答案 0 :(得分:1)

需要注意的一点是,ssCpuIdle变量实际上正在消失。它是在一段固定的时间内测量的,这是一个问题,因为它是不准确的。

如果您仍想在旧版本的snmpd上使用它,那么以下监视器行可能会执行您想要的操作:

monitor   -u guest_user  -r  1  "idle too high"  ssCpuIdle > 97

如果你使用较新的ssCpuRawIdle对象,那么你需要监控它的delta:

monitor   -u guest_user  -r  1  "idle too high" -D ssCpuRawIdle > NUMBER

NUMBER的大小可能取决于所讨论的系统(具体来说,有多少核心)。您可以使用对象的描述来提出初始计算的猜测并从那里开始:

  DESCRIPTION   "The number of 'ticks' (typically 1/100s) spent idle.

             On a multi-processor system, the 'ssCpuRaw*'
             counters are cumulative over all CPUs, so their
             sum will typically be N*100 (for N processors)."