Perfdata size growing (too much?)

perfdata
icinga2
(Constantin) #1

Hello,

Not sure if this is an issue or not, but my perfdata folder (/var/spool/icinga2/perfdata/ ) getting bigger and bigger. So, I have following features enabled:
Enabled features: api checker command ido-mysql livestatus mainlog notification perfdata

And following modules:
MODULE VERSION STATE DESCRIPTION
doc 2.4.2 enabled Documentation module
monitoring 2.4.2 enabled Icinga monitoring module
nagvis 1.1.1 enabled NagVis integration
pnp 1.1.0 enabled Timeseries grapher integration for PNP4Nagios

But I also have the NPCD daemon up and running.
Status of the service is:
Mar 21 11:36:47 master-node-2 NPCD[15178]: ERROR: Executed command exits with return code ‘6’
Mar 21 11:36:47 master-node-2 NPCD[15178]: ERROR: Command line was ‘/usr/libexec/pnp4nagios/process_perfdata.pl -n --bulk /var/spool/icinga2/perfdata/service-perfdata.1521628600’
Mar 21 11:37:18 master-node-2 NPCD[15178]: ERROR: Executed command exits with return code ‘6’
Mar 21 11:37:18 master-node-2 NPCD[15178]: ERROR: Command line was ‘/usr/libexec/pnp4nagios/process_perfdata.pl -n --bulk /var/spool/icinga2/perfdata/host-perfdata.1521628630’

I presume the errors are because of the files which are processed and are no longer there…

Now my questions is, if I disable perfdata feature, will the hosts still report the usage graphs?
My understanding is that they shall not gather perdata any longer, unless Grafana or graphite is used. Correct?

(Michael Friedrich) #2

Performance data in spool files is one (old) way of dump the metrics. Modern reliable ways include Graphite or InfluxDB which process the metrics in memory and community via tcp socket or http api. There is no temporary spooling involved and this also allows for real time metrics too.

In case of your problem, I would look into PNP / NPCD and gather what “exit code 6” actually means. Enable the debug log and ensure that process_perfdata.pl logs the actual error, not NPCD.

Grep’ing the source for exit 6 could mean this for example:

1 Like