系统启动超过497天后日志显示信息 “truncating integer value > 32 bits“

问题

snmpd 启动 497 天后,产生如下日志信息:

Mar 10 08:27:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:18:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:18:37 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:19:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:19:37 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:20:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:20:37 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:21:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:21:37 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:22:08 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:22:38 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:23:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:23:37 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:24:08 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:24:38 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:25:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:25:38 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:26:07 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:26:38 rhel6 snmpd[18697]: truncating integer value > 32 bits
Mar 10 08:27:07 rhel6 snmpd[18697]: truncating integer value > 32 bits

受影响的环境

Red Hat Enterprise Linux 5

Red Hat Enterprise Linux 6

Red Hat Enterprise Linux 7

net-snmp

解决办法

(1)不对OID>32bits的值进行查询,则不会输出此消息。

(2)可以在 snmpd.conf 中使用“view systemview excluded“ 排除可能>32 位值的 uid。这只会帮助直接使用 OID 而不是 MIB 名称的查询(即hrSystemUptime)

(3)可以修改 snmpd 的日志记录以阻止该消息。在 /etc/sysconfig/snmpd中使用如下选项

OPTIONS="-LS0-2d -Lf /dev/null -p /var/run/snmpd.pid"

(4)如果系统经过时间超过 497 天,则在hrSystemUptime读取或读取其 OID .1.3.6.1.2.1.25.1.1.0 时将输出此消息。

(5)当出现“truncating integer value > 32 bits”信息,重启snmpd服务。命令:

service snmpd restart

重新启动 snmpd服务后会重置计数器,从而阻止该消息。

PS:本人遇到该问题时,偷懒,使用的最后一种办法。

参考:https://access.redhat.com/solutions/367093