=item 2 that the group owning the Nagios command pipe is the same as the Nagios group (otherwise, the restarted
Nagios will not be able to read from the command pipe).
=back
Nagios installations using the persistence framework B<must> monitor the memory use of the Nagios process and stop/start it when
the usage is exorbidant (eg, for a site with 400 services on 200 hosts and custom Perl plugins used for about 10% of the
service checks, the Nagios process uses ~80 MB after 20-30 days runningi with Perl 5.005 [Memory usage is
B<much> greater with recent Perls]. It is usually stopped and started at this point).
Note that a HUP signal is B<not> sufficient to deallocate the Perl memory; the Nagios process must be stopped and started. In fact, since HUP
causes Nagios to re-run the Perl interpreter initialisation code, memory use increases significantly. B<Don't use HUP>; use the 'restart' argument
of the Nagios supplied startup script.
There are all sorts of suprising gotchas about the debug logging including
=over 4
=item * No dump of good plugins.
Only plugins that fail to compile (after transformation) are dumped.
=item * Cache dump is periodic
The Cache is only dumped after the user specified number of plugin B<compilations>. If plugins are not compiled, you get
no dump of the cache.
=item * Debug level set at compile time
Nagios must be restarted to change the debug level (use the examples if you have a troublesome plugin;l you may need a debug copy
of Nagios)
=item * Not all Cached fields visible
Always compile one more plugin to ensure that all the fields in the cache are set.
=back
=head1 SEE ALSO
=over 4
=item * perlembed (section on maintaining a persistent interpreter)
=item * examples in the examples/ directory including both C and Perl drivers that run Nagios plugins using p1.pl.
=back
=head1 AUTHOR
Originally by Stephen Davies.
Now maintained by Stanley Hopcroft <hopcrofts@cpan.org> who retains responsibility for the 'bad bits'.
=head1 COPYRIGHT
Copyright (c) 2004 Stanley Hopcroft. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
=cut
=8=
THE END |