We have around 22 Eaton UPS devices currently monitored on Observium and I have been investigating today why about 25% of them refuse to return a syslocation.

It seems that the devices just don't reliably return snmpget when multiple OID are queried at once, at least for these objects.

Specifically, when taking the following command from the poller debug and running it manually:

/usr/bin/snmpget -t '4' -r '2' -v3 -l 'authPriv' -n '' -x 'DES' -X 'removed' -a 'MD5' -A 'removed' -u 'observium' -Pu -OQUs -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'device':'161' sysUpTime.0 sysLocation.0 sysContact.0 sysName.0

The request times out even when increasing the timeout.

When reducingĀ the numberĀ of OID queried to 3 or less the device seems to respond:

/usr/bin/snmpget -t '4' -r '2' -v3 -l 'authPriv' -n '' -x 'DES' -X 'removed' -a 'MD5' -A 'removed' -u 'observium' -Pu -OQUs -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'device':'161' sysUpTime.0 sysLocation.0 sysContact.0
sysUpTime.0 = 0:0:31:01.19
sysLocation.0 = location
sysContact.0 = user@example.com

/usr/bin/snmpget -t '4' -r '2' -v3 -l 'authPriv' -n '' -x 'DES' -X 'removed' -a 'MD5' -A 'removed' -u 'observium' -Pu -OQUs -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'device':'161' sysLocation.0 sysContact.0 sysName.0
sysLocation.0 = location
sysContact.0 = user@example.com
sysName.0 = device

Is there a way to configure the behaviour to reduce the number of simultaneous OID requested to make this work reliably?

Thanks,
Tim C