Hi Tyler
On 27/10/13 05:30, Tyler Christiansen wrote:
Observium polls the entire ifEntry and ifXEntry MIBs on devices. This results in grabbing results from 11 OIDs that don't need to be polled for each device.
I have also observed this.
The reasoning behind this is that those 11 MIBs are duplicates either within the same MIB or between the two MIBs--except that one is a 32-bit counter and one is a 64-bit counter.
This is an expensive operation--in my tests, polling the 11 MIBs in question took about 2 minutes on average using snmpbulkwalk. My stack has grown a bit since those tests and has resulted in total polling time taking longer than five minutes.
Proably there should be a detection in the discovery process if the system has 32 or 64 bit counters. Unfortunately there are still relatively new devices which only have 32bit counters and can only speak snmpv1.
I also suggested that the OIDs should be polled in parallel, but the individual behind @observium also seemed to feel that it's a bad idea to poll a device for multiple OIDs in parallel. To be honest, I don't know of any basis for that. Unless you have a very bad network (over-utilized, underpowered), parallel polling a single device via SNMP does not hurt the device or your network in any way. It doesn't hurt your server, either, unless you're trying to use old hardware--which Observium doesn't seem to work well with anyway. This is, of course, based on my own experience in the past working for a national ISP operating across 46 U.S. states and in both ILEC and CLEC markets and my current employer where many devices are polled simultaneously by many different diagnostic utilities for overall health management.
This is very critical. I've seen devices going crazy when they get several parallel snmp queries. Even with the actual snmp poller of obervium some devices have high cpu load. No, i don's speak of 10 year old devices, they are simply badly engineered.
Regards
Matthias