You are here

Blog

Loading MIBs to work with Opsview

webteam's pictureAdministrator |

Loading MIBs to work in OpsviewOne of the common questions we get asked is if vendor supplied MIBs (management information base) are supported for use with Opsview.

This is an easy one for us to answer, as it's a simple 'yes'.

In this post we're going to show you how to load your MIB for Opsview to process it.

In our example we're going to use an ADSL router supplied by Draytek.  If we run an snmpwalk against the device, we see this specific output, which we simply can't make sense of without the MIB.

SNMPv2-SMI::transmission.94.1.1.1.1.1.4 = INTEGER: 2
SNMPv2-SMI::transmission.94.1.1.1.1.2.4 = INTEGER: 2
SNMPv2-SMI::transmission.94.1.1.1.1.3.4 = OID: SNMPv2-SMI::zeroDotZero
SNMPv2-SMI::transmission.94.1.1.1.1.4.4 = Hex-STRING: 44 45 46 56 41 4C 00 00 00 00 00 00 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.1.1.5.4 = Hex-STRING: 44 45 46 56 41 4C 00 00 00 00 00 00 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.3.1.1.4 = Hex-STRING: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.3.1.2.4 = Hex-STRING: 44 52 41 59 54 45 4B 00 00 00 00 00 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.3.1.3.4 = Hex-STRING: 03 02 01 22 00 00 00 00 00 00 00 00 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.3.1.4.4 = INTEGER: 6
SNMPv2-SMI::transmission.94.1.1.3.1.5.4 = Gauge32: 34
SNMPv2-SMI::transmission.94.1.1.3.1.6.4 = Hex-STRING: 53 48 4F 57 54 49 4D 45 00 49 41 4C 00 00 00 00
SNMPv2-SMI::transmission.94.1.1.3.1.7.4 = INTEGER: 12
SNMPv2-SMI::transmission.94.1.1.3.1.8.4 = Gauge32: 15824000
SNMPv2-SMI::transmission.94.1.1.4.1.1.4 = Gauge32: 0
SNMPv2-SMI::transmission.94.1.1.4.1.2.4 = Gauge32: 15736282
SNMPv2-SMI::transmission.94.1.1.4.1.3.4 = Gauge32: 0
SNMPv2-SMI::transmission.94.1.1.4.1.4.4 = Gauge32: 0
SNMPv2-SMI::transmission.94.1.1.5.1.1.4 = Gauge32: 0
SNMPv2-SMI::transmission.94.1.1.5.1.2.4 = Gauge32: 1151944
SNMPv2-SMI::transmission.94.1.1.5.1.3.4 = Gauge32: 0
SNMPv2-SMI::transmission.94.1.1.5.1.4.4 = Gauge32: 0

Opsview makes working with MIBs easy, as it inherits them from the operating system it is installed on. Thus, to allow Opsview to interpret the above data, we simply need to load the MIB so that the OS can read it. 

This is really simple.

On a Red Hat Enterprise Linux server, simply copy your MIBs to /usr/share/snmp/mibs.  If you are going to be performing snmp traps, you will also need to copy them to /usr/local/nagios/snmp/load/.

Once the MIBs have been copied, we can now re-run the snmpwalk command noticing that the output is very different.  This is the output we require to allow us to monitor snmp events with Opsview.

ADSL-LINE-MIB::adslLineCoding.4 = INTEGER: dmt(2)
ADSL-LINE-MIB::adslLineType.4 = INTEGER: fastOnly(2)
ADSL-LINE-MIB::adslLineSpecific.4 = OID: SNMPv2-SMI::zeroDotZero
ADSL-LINE-MIB::adslLineConfProfile.4 = STRING: DEFVAL
ADSL-LINE-MIB::adslLineAlarmConfProfile.4 = STRING: DEFVAL
ADSL-LINE-MIB::adslAturInvSerialNumber.4 = STRING: 
ADSL-LINE-MIB::adslAturInvVendorID.4 = STRING: DRAYTEK
ADSL-LINE-MIB::adslAturInvVersionNumber.4 = STRING:    "
ADSL-LINE-MIB::adslAturCurrSnrMgn.4 = INTEGER: 6 tenth dB
ADSL-LINE-MIB::adslAturCurrAtn.4 = Gauge32: 34 tenth dB
ADSL-LINE-MIB::adslAturCurrStatus.4 = BITS: 53 48 4F 57 54 49 4D 45 00 49 41 4C 00 00 00 00 
ADSL-LINE-MIB::adslAturCurrOutputPwr.4 = INTEGER: 12 tenth dBm
ADSL-LINE-MIB::adslAturCurrAttainableRate.4 = Gauge32: 15820000 bps
ADSL-LINE-MIB::adslAtucChanInterleaveDelay.4 = Gauge32: 0 milli-seconds
ADSL-LINE-MIB::adslAtucChanCurrTxRate.4 = Gauge32: 15736282 bps
ADSL-LINE-MIB::adslAtucChanPrevTxRate.4 = Gauge32: 0 bps
ADSL-LINE-MIB::adslAtucChanCrcBlockLength.4 = Gauge32: 0 byte
ADSL-LINE-MIB::adslAturChanInterleaveDelay.4 = Gauge32: 0 milli-seconds
ADSL-LINE-MIB::adslAturChanCurrTxRate.4 = Gauge32: 1151944 bps
ADSL-LINE-MIB::adslAturChanPrevTxRate.4 = Gauge32: 0 bps
ADSL-LINE-MIB::adslAturChanCrcBlockLength.4 = Gauge32: 0

If we go to Opsview, we can create a custom SNMP poll service check. 

SETTINGS > SERVICE CHECKS > CREATE NEW

Now when we run an smmpwalk within Opsview, you can select the value(s) you wish to monitor. In our example below, we’re monitoring the current signal to noise ratio.

Loading MIBs for use in Opsview

That’s all there is to loading a custom MIB within Opsview!

Administrator |