Perfometer for local checks

Hi there,

I am here with another problem:

I am trying to implement perfometers for my local checks. I have already browsed through the documentation of How to create perfometers and several of the forum posts, without any promising results.

My localchecks are python scripts in the folder
/usr/lib/check_mk_agent/local

They are bash scripts with the name localcheck_xyz giving output with service names like Temperature, Pressure, etc.
They are working fine and can be seen on the checkmk monitoring page.

My perfometer is a python script in the folder
/omd/sites/checkmk/local/share/check_mk/web/plugins/perfometer

It looks like this:

#!/usr/bin/python
def perfometer_localcheck(row, check_command, perf_data):
    return repr(check_command), ''
perfometers['check_mk_local'] perfometer_localcheck
perfometers['Temperature'] perfometer_localcheck
perfometers['Pressure'] perfometer_localcheck
perfometers['check_mk_local.Pressure'] perfometer_localcheck

You see, I have tried different name-snippets to register the perfometers.

After restarting omd (sudo omd restart) no perfometers are shown for any of the local checks.

I have also taken a look at the standard-implemented perfometers which look similar to mine.

I guess it has something to do with the registration of the snippet or checkmk not realizing to read the perfometers themselves.

Can someone offer any advice?

Any help is appreciated!

Thanks in advance!

The easiest way to get a Perf-o-Meter for your local check would be to use already defined measurements.
Example - if you have a temperature then you only need to name your performance value “temp” and you have the right perf-o-meter.

To get an overview over already defined measurements and there perf-o-meters you can look at the file
“~/lib/python/cmk/gui/plugins/metrics/check_mk.py”

2 Likes