You may notice that services with long names are not showing performance data graphs in pnp4nagios. This issue may show itself through NPCD logs similar to the following:
NPCD[1234]: ERROR: Executed command exits with return code '36'
The important part of this error is the return code, where "36" is likely referring to ENAMETOOLONG. We believe this issue occurs when NPCD tries to create a new XML file for the performance data, but fails as the name of the service, which is then fully included in the filename, is too long, exceeding the system limit.
In our testing, service names exceeding ~233 characters have seen perfdata graphs failing to be created at all, and we therefore strongly advise users to avoid longer names for services where possible, or in the cases where they may be necessary, disable performance data processing for these service objects entirely by setting process_perf_data
to zero for that object.
Other NPCD return codes
The above is only relevant in cases where you are observing exit code 36. If you are instead seeing:
Return code '7'
This likely means that your NPCD process timed out and did not process your performance data in time. One way to resolve this may be to edit:
process_perfdata.cfg
Scroll down to "TIMEOUT" and set the "TIMEOUT" to a larger value, for example:
TIMEOUT = 45
Restart npcd afterwards to reload the configuration.
# systemctl restart npcd
-
Tags:
- NPCD
- PNP4Nagios
- Error
- codes
- OP5 Monitor
- exported_docs_10_05_24
Comments
0 comments
Please sign in to leave a comment.