Nagios can use a flat file based backend or a db backend (in this case MySQL). If you use the MySQL backend you have to use a different script to check the state of Nagios. It is a perl script provided by nagios-plugins called check_nagios_db.pl located at two locations : /usr/nagios/libexec/check_nagios_db.pl /usr/nagios/libexec/contrib/check_nagios_db.pl Unfortunatly, it has two missing running dependencies that it requires to be able to execute itself. It is dev-perl/DBI and dev-perl/DBD-mysql. After emerging these two perl libs it is able to run without problems. *** Warning *** The stable dev-perl/DBD-mysql (2.9003) cannot compile with >=mysql-4.1.3. See 56356 for more detail but it has been fixed upstream with 2.9004 and available in portage in the unstable branch. Reproducible: Always Steps to Reproduce: 1. # emerge nagios 2. Setup software configs 3. # /usr/nagios/libexec/check_nagios_db.pl Actual Results: pluto nagios # /usr/nagios/libexec/contrib/check_nagios_db.pl Can't locate DBI.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/site_perl/5.8.6/i686-linux /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.6/i686-linux /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.6/i686-linux /usr/lib/perl5/5.8.6 /usr/local/lib/site_perl .) at /usr/nagios/libexec/contrib/check_nagios_db.pl line 11. BEGIN failed--compilation aborted at /usr/nagios/libexec/contrib/check_nagios_db.pl line 11. After emerging DBI ----------------- pluto nagios # /usr/nagios/libexec/contrib/check_nagios_db.pl install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/site_perl/5.8.6/i686-linux /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.6/i686-linux /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.6/i686-linux /usr/lib/perl5/5.8.6 /usr/local/lib/site_perl .) at (eval 1) line 3. Perhaps the DBD::mysql perl module hasn't been fully installed, or perhaps the capitalisation of 'mysql' isn't right. Available drivers: DBM, ExampleP, File, Proxy, Sponge. at /usr/nagios/libexec/contrib/check_nagios_db.pl line 54 Expected Results: pluto nagios # /usr/nagios/libexec/check_nagios_db.pl Nagios OK: located 1 processes, program status updated 4 seconds ago Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r6 i686) ================================================================= System uname: 2.6.11-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.66GHz Gentoo Base System version 1.6.12 Python: dev-lang/python-2.3.5 [2.3.5 (#1, Apr 28 2005, 09:54:01)] dev-lang/python: 2.3.5 sys-apps/sandbox: [Not Present] sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.16 virtual/os-headers: 2.6.8.1-r4 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.mirrors.pair.com/ http://mirror.datapipe.net/gentoo ftp://gentoo.mirrors.pair.com/" LC_ALL="fr_CA.UTF-8" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X acl acpi apache2 bash-completion berkdb caps cups firebird ftp gnome gtk gtk2 gtkhtml innodb memlimit mysql ncurses nls pam python readline samba snmp soap sse ssl tcpd unicode vhosts xml xml2 userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LDFLAGS, LINGUAS
Fixed in cvs as 1.4.2-r1.