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.
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 :
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 :
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 :
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.pnp4nagios is did for that.
IDO2DB or FILESOCK is the manner how icinga2 will populate your database.
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.