Re: Checks stop running randomly
Posted: Tue Jun 19, 2012 11:21 am
That would make my day if you guys found it ; )
Support for Nagios products and services
https://support.nagios.com/forum/
Code: Select all
/"$pkgname"/db/upgradedb -u ndoutils -p "$ndopass" -h "$ndohost" -d nagiosCode: Select all
eval {$dbh->do("SELECT * FROM nagios_dbversion LIMIT 1") };
if ($@) {
print "*** Creating table nagios_dbversion",$/;
$dbh->do("CREATE TABLE nagios_dbversion (name VARCHAR(10) NOT NULL, version VARCHAR(10) NOT NULL);");
};Code: Select all
54 # Get current database version
55 my $version;
56 my $thisversion="1.5.1";
57 my $lastversion="1.5.1";
58 my $legacyversion="1.5.1";
59
60 $version = $dbh->selectrow_array("SELECT version FROM nagios_dbversion WHERE name='ndoutils'");
61 if ($version eq "") {
62 # Assume last legacy release (didn't have version table)
63 print "*** Assuming version $legacyversion of nodutils installed",$/;
64 $dbh->do("INSERT nagios_dbversion SET name='ndoutils', version='$legacyversion';");
65 $version = $legacyversion
66 };Code: Select all
68 print "Current database version: $version",$/;
69
70 if ($version eq $thisversion){
71 print "Database already upgraded.",$/;
72 exit 0;
73 }Code: Select all
mysql> select * from nagios_dbversion;
Empty set (0.00 sec)
mysql> desc nagios_dbversion
-> ;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(10) | NO | | | |
| version | varchar(10) | NO | | | |
+---------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)Code: Select all
[kdandrid@sidhqmonm0 db]$ ll mysql-upgrade-*.sql
-rwxrwxrwx 1 root root 5127 Oct 31 2007 mysql-upgrade-1.4b6.sql
-rwxrwxrwx 1 root root 5127 Oct 31 2007 mysql-upgrade-1.4b5.sql
-rwxrwxrwx 1 root root 11279 Oct 31 2007 mysql-upgrade-1.4b4.sql
-rwxrwxrwx 1 root root 11279 Oct 31 2007 mysql-upgrade-1.4b3.sql
-rwxrwxrwx 1 root root 11368 Oct 31 2007 mysql-upgrade-1.4b2.sql
-rwxrwxrwx 1 root root 12246 Oct 31 2007 mysql-upgrade-1.4b1.sql
-rwxrwxrwx 1 root root 24546 Oct 31 2007 mysql-upgrade-1.3.sql
-rwxrwxrwx 1 root root 1082 Jan 5 2010 mysql-upgrade-1.4b8.sql
[kdandrid@sidhqmonm0 db]$Code: Select all
#!/bin/sh -e
pkgname="$1"
echo "NDOUTILS POST-UPGRADE..."
##parse values in case mysql is offloaded
ndopass=$(sed -n '/^db_pass=/ s///p' /usr/local/nagios/etc/ndo2db.cfg)
ndohost=$(sed -n '/^db_host=/ s///p' /usr/local/nagios/etc/ndo2db.cfg)
ndouser=$(sed -n '/^db_user=/ s///p' /usr/local/nagios/etc/ndo2db.cfg)
# Post-install modifications
# New init file
cp -f mods/ndo2db.init /etc/init.d/ndo2db
# Change some settings in /etc/sysctl.conf
sed -i -e '/^kernel\.msgmnb/ s/.*/kernel.msgmnb = 131072000/' \
-e '/^kernel\.msgmax/ s/.*/kernel.msgmax = 131072000/' /etc/sysctl.conf
# Upgrade the database
./"$pkgname"/db/upgradedb -u "$ndouser" -p "$ndopass" -h "$ndohost" -d nagios
# Restart ndo2db daemon
service ndo2db restart
# Restart Nagios Core (to use new ndomod module)
service nagios restartCode: Select all
cd /tmp/nagiosxi/subcomponents/ndoutils
./upgradeCode: Select all
diff mysql-upgrade-1.4b2.sql mysql-upgrade-1.4b4.sql
1,3d0
< ALTER TABLE `nagios_hosts` ADD `alias` VARCHAR( 64 ) NOT NULL AFTER `host_object_id` ;