1

I am an absolute beginner with Icinga and I have already tried several desperate attempts at finding a solution to it. After finally bringing check_snmp_int.pl to give me performance data I've tried to provide this data to JasperReports and Graphite. I've googled several desperate hours but couldn't find any answer. I can't seem to find where check_snmp_int.pl saves it's data for performance checks.

I'm working on: Ubuntu 14.04 Icinga2 version:r2.5.4-1 IcingaWeb2 version 2.3.4

I have already installed the plugin check_snmp_int.pl.

object CheckCommand "check_snmp_int" {
    import "plugin-check-command"
    command = [PluginDir + "/check_snmp_int.pl"]
    arguments = {
            "-H" = "$snmp_address$"
            "-C" = "$snmp_community$"
            "-p" = "$snmp_port$"
            "-2" = {set_if = "$snmp_v2$"}
         "-o" = "$snmp_oid$"
            "-f" = {set_if = "$snmp_perf$"}
            "-w" = "$snmp_warn$"
            "-c" = "$snmp_crit$"
    }
}

This is the service I have implemented with the plugin.

apply Service "bandbreitenueberwachung" {
    check(unknown) at 12:40 ..._int"
    check_interval = 5m
    assign where host.vars.os == "Switch"
}

tldr: where does check_snmp_int.pl save data and where does it retrieve it's data so I can use them in IcingaWeb.

Thanks David.

1 Answers1

0

In your icinga2 configuration you must activate the performance data and select the broker (the soft which will treat yours performances datas sent by your check).

icinga2.conf for example :

...
process_performance_data = 1
broker_module = "/usr/local/pnp4nagios/lib/npcdmod.o config_file=/usr/local/pnp4nagios/etc/npcd.cfg"
...

And you will have to install a soft which will treat your perf datas. It's not check_snmp_int.pl which will save your perfdatas. It only send his results like this :

result of the check|graph1=... graph2=...

example :

 4 disks OK. Disk #1: ok, Disk #2: ok, Disk #3: ok, Disk #4: ok, |Disk #1=1 Disk #2=1 Disk #3=1 Disk #4=1

The left part of the pipe is the response of your service, and the right is used for treating in your graph soft.

EDIT 1 :

does pnp4nagios work with Graphite, if yes how?

I've never used graphite but from the tutorials on the web, it seems pnp works with graphite.

pnp4nagios will wait icinga sends the perfdatas from the results of the checks which are in the right part of the pipe in the response.

It's for that, you must activate the perfdata in the conf of icinga and explain to icinga2 which broker it will use for treating the perfdatas.

When pnp4nagios receive the datas, it write them in files stored by default in /usr/local/pnp4nagios/var/perfdata/. You will have a directory per host, and in it, you will two files for each service a xml and a rrd file.

which software am I supposed to install to treat my performance datas?

pnp4nagios is did for that.

Do you mean something like IDO2DB or FILE2SOCK?

IDO2DB or FILESOCK is the manner how icinga2 will populate your database.

Do you have any idea how we can rewrite the service mentioned above, since it doesnt work at the moment. By default, the script send the perfadtas with the results as the format seen above.

You can test your check_snmp_int.pl directly in a console and see if you have datas after the pipe.

Moreover, you must activate the perfdata in icinga.conf and declare your broker.

Sorcha
  • 1,315
  • 8
  • 11
  • Thanks for the response, but I have some questions regarding your solution. First of all, does pnp4nagios work with Graphite, if yes how? I'll have to use especially Graphite thats why I'm asking. Furthermore which software am I supposed to install to treat my performance datas? Do you mean something like IDO2DB or FILE2SOCK? Do you have any idea how we can rewrite the service mentioned above, since it doesnt work at the moment. With kind regards David – GHUrekMazino Jan 24 '17 at 09:16
  • I actually do not have the line with process_performance_data = 1 or the broker_module – GHUrekMazino Jan 24 '17 at 09:22
  • see EDIT 1 in my answer – Sorcha Jan 24 '17 at 12:10