How does 1 create a check to just get some SNMP values from a device

I have some IP camera’s (Avigilon) as well as some other SNMP devices that I want to get some information from. I don’t see any predefined checks for these. I have the MIB’s. I have a short test list of OID’s that I just want to get. I want to right a check that runs on the CheckMK server that would query snmp and for the different models collect the data and map it to a service name. Like Model being one. So how do I start this? Just looking for a starter peace. Then if I have a value for firmware then how to do map OID to say Firmware?

Hi @jbennett ,

welcome to checkmk :slight_smile:

You could start the “big way” and develop your own SNMP check plugin: Writing your own check plug-ins

Or you just create active checks, one for each OID that you want to query. This can be done with the Nagios plugin check_snmp. We have created an extension package that provides a ruleset for easy configuration: Checkmk Exchange

1 Like

Thank you for this. I think I want to write a SNMP check plugin. I see the items under 8.4 but I guess I am not understanding how you take 1 OID and name it to say Model. Then another OID and name it Firmware and so on.

It depends on the structure of the SNMP data. You could implement separate service checks for each or just use the name as item.

Have a look at the existing check plugins to get an idea how it is done.

I have looked at them but I am not seeing a correlation.
For example here is an Uptime.
OID=., Type=TimeTicks, Value=3 days, 0:10:22.41

So how would I make this show
Value I am guessing might be in a number and I see where I would use a function for converting.
I want to call this Uptime and display 3 days, 0:10:22.41

Quick reply before I go have my weekend (-:

Maybe easier to start with active checks as @r.sander suggested first.
So: Setup | Services | Other services | Integrate Nagios plugins

Example for showing model of my printer:

This is a rule that I apply to ‘all’ my printers

When you got that working, you can take a step further making it into a plugin the big way.

So I tried this with both a model OID and the uptime. I am getting this error. I have also tried this with putting the IP address in the rule same thing.
External command error: snmp_build: unknown failure