# ----------------------------------------------------------------------- # © Copyright 2003-2011 by Alex Peeters [alex.peeters@citap.be] # ----------------------------------------------------------------------- # General - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Author : Alex Peeters [alex.peeters@citap.be] Latest update: dd month 2011 Version : 3.002.003 # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # general - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - TODO: - TODO ALL - Log::Dispatch, Log::Dispatch::FileRotate depend on Date::Manip depend on perl 5.10 - , 'Log::Dispatch' => '2.26' - , 'Log::Dispatch::FileRotate' => '1.19' - , 'Log::Log4perl::Layout::XMLLayout' => 'x.x' Version 3.002.003, 2011/xx/yy, by Alex Peeters ASNMTAP - Nagios.pm BUGFIX: convert_from_KB_to_metric for GB BUGFIX: DESTROY created new reference to dead object 'ASNMTAP::Asnmtap::Plugins::Nagios' during global destruction. - WebTransact.pm UPDATE: added Content_Type: 'multipart/form-data' for qs-fixed - change code to use 'perfdata' - UPDATE: asnmtap-3.002.003_mysql-v5.0.x-trigger-events.sql - UPDATE: asnmtap-3.002.003_mysql-v5.0.x-trigger-eventsUpdate.sql - runCmdOnDemand.pl & WebTransact.pm - replace with - SOAP.pm NEW: encodingStyle NEW: error 'Missing SOAP Envelope or Body' UPDATE: soapaction - create_ASNMTAP_weblogic_configuration_for_SNMP.pl UPDATE: added status to e-mail subject - NEW: supportRequest template (applications/custom/supportRequest.pm-orig) integrated into comments.pl - NEW: integration for SDE (applications/custom/sde-supportRequest.pm-orig) into comments.pl - NEW: check_xml-monitoring-1.2.pl - UPDATE: coments.pl with integration for applications/custom/supportRequest.pm ASNMTAP::Asnmtap::Applications - Applications.cnf ... # # ... # VERSION 20 # '19' or '20' # CONFIG perfparse20.cfg # 'perfparse.cfg' or 'perfparse20.cfg' # Version 3.002.002, 2010/09/22, by Alex Peeters ASNMTAP - UPDATE asnmtap-3.002.002_mysql-v5.0.x-trigger-events.sql - optimalisatie DBI connection problems - NEW /cgi-bin/moderator/comments.pl Set multiple comments by drag and drop list Database schema v3.002.002 - UPDATE /applications/tools/mysql/asnmtap-3.002.002_mysql-v5.0.x.sql - UPDATE /applications/tools/mysql/asnmtap-3.002.002-distributed_mysql-v5.0.x.sql - ALTER TABLE `events` ADD COLUMN `perfdata` text AFTER `statusMessage`; - ALTER TABLE `eventsDisplayData` ADD COLUMN `perfdata` text AFTER `statusMessage`; - ALTER TABLE `views` ADD COLUMN `timeperiodID` INT(11) NOT NULL DEFAULT '1' AFTER `displayGroupID`; - ALTER TABLE `views` ADD INDEX `timeperiodID` (`timeperiodID`); - ALTER TABLE `views` ADD INDEX `views_ibfk_4` (`catalogID`, `timeperiodID`); - ALTER TABLE `views` ADD CONSTRAINT `views_ibfk_4` FOREIGN KEY (`catalogID`,`timeperiodID`) REFERENCES `timeperiods` (`catalogID`,`timeperiodID`); Help Plugin docs - update new help plugin doc file type 'http(s)://' SNMPTraps-Frontend for Nagios & ASNMTAP - UPDATE class.mysqlDB.php: replace 'INSERT INTO' with 'REPLACE INTO' XML plugin templates - UPDATE new command line option 'uKey' ASNMTAP::Asnmtap::Applications::CSV VARIABLES - UPDATE our @EVENTS = ('catalogID', 'id', 'uKey', 'replicationStatus', 'test', 'title', 'status', 'startDate', 'startTime', 'endDate', 'endTime', 'duration', 'statusMessage', 'perfdata', 'step', 'timeslot', 'instability', 'persistent', 'downtime', 'filename'); views.pl - added 'Incident Monitoring Window' Version 3.002.001, 2010/07/28, by Alex Peeters ASNMTAP - NEW 'filter-option' to search - UPDATE cpan module SOAP::Lite to 0.710.08 (reported problems with 0.710.09 and later) - UPDATE cpan module WSRF::Lite to 0.8.2.7 - UPDATE /applications/tools/mysql/asnmtap-3.002.001-database-schema.png - UPDATE create_ASNMTAP_jUnit_configuration_for_jUnit.pl - NEW autoinstall.sh - UPDATE Applications.cfg - NEW 'EVENTSDISPLAYDATA eventsDisplayData' between ... - NEW module ASNMTAP::PseudoHash for making perl 5.10 compatibility replace 'use fields' with 'use ASNMTAP::PseudoHash' replace 'fields::phash' with 'ASNMTAP::PseudoHash' - UPDATE comments.pl -> html code optimalisation - UPDATE display.pl -> debug: toggleDiv(), pop-up: overlib() & pop-down: nd() - NEW $trigger, to speedup the display generation: fase I - UPDATE trendlineCorrectionReports.pl -> faster SQL queries - UPDATE TABLE `displayDaemons` for MySQL' - ALTER TABLE `displayDaemons` ADD COLUMN `trigger` char(1) NOT NULL default 'F' AFTER `loop`; - UPDATE TABLE `eventsChangesLogData` for MySQL' - ALTER TABLE `eventsChangesLogData` ADD COLUMN `posTimeslot` INT(11) NOT NULL default '9' AFTER prevTimeslot; - NEW TABLE `eventsDisplayData` for MySQL' - CREATE TABLE `eventsDisplayData` ( - `catalogID` varchar(5) NOT NULL default 'CID', - `posTimeslot` int(11) NOT NULL DEFAULT '0', - `uKey` varchar(11) NOT NULL default '', - `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I', - `test` varchar(512) NOT NULL default '', - `title` varchar(75) NOT NULL default '', - `status` varchar(9) NOT NULL default '', - `startDate` date NOT NULL default '0000-00-00', - `startTime` time NOT NULL default '00:00:00', - `endDate` date NOT NULL default '0000-00-00', - `endTime` time NOT NULL default '00:00:00', - `duration` time NOT NULL default '00:00:00', - `statusMessage` varchar(1024) NOT NULL default '', - `step` smallint(6) NOT NULL default '0', - `timeslot` varchar(10) NOT NULL default '', - `instability` tinyint(1) NOT NULL default '9', - `persistent` tinyint(1) NOT NULL default '9', - `downtime` tinyint(1) NOT NULL default '9', - `filename` varchar(254) default '', - PRIMARY KEY (`catalogID`,`uKey`,`posTimeslot`), - KEY `catalogID` (`catalogID`), - KEY `uKey` (`uKey`), - KEY `posTimeslot` (`posTimeslot`), - KEY `replicationStatus` (`replicationStatus`), - KEY `eventsDisplayData_ibfk_1` (`catalogID`,`uKey`), - CONSTRAINT `eventsDisplayData_ibfk_1` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`) - ) ENGINE=InnoDB; - NEW TRIGGER `eventsDisplayData` for MySQL: asnmtap-3.002.001_mysql-v5.0.x-trigger-eventsDisplayData.sql Version 3.001.003, 2010/03/10, by Alex Peeters - NEW applications/log4perl.cnf - NEW CPAN module DBD::CSV & Text::CSV added to Makefile.PL - NEW CPAN module Log::Dispatch, Log::Dispatch::FileRotate, Log::Log4perl & DBIx::Log4perl added to Makefile.PL - tar -P -cvzf cpan-20100211.tgz /opt/monitoring/bin /opt/monitoring/lib /opt/monitoring/man - NEW applications/log4perl.cnf config file for Log::Log4perl - NEW integration for Cartography (applications/custom/cartography.pm-orig) into display.pl ASNMTAP::Asnmtap::Plugins::Nagios - NEW check_pargs.pl ASNMTAP::Asnmtap::Pluggins::WebTransact.pm - NEW option for check () keepAlive = [01] ASNMTAP::Asnmtap::Applications::CGI.pm & archiver.pl - DEPRECATED $SERVERMYSQLVERSION = '4.x' - Applications.cnf # # # VERSION 5.0.x # '5.0.x' or '5.1.x' # ... # - Applications.pm - init_email_report() - ADDED select((select($EMAILREPORT), $| = 1)[0]); # autoflush - archive.pl - NEW function CSV_import_from_table - collector.pl - NEW function CSV_prepare_table - NEW function CSV_insert_into_table - NEW function CSV_cleanup_table - NEW TIMING OUT SLOW PLUGIN - NEW ERROR NOT DEFINED - contact server administrators - PLUGIN '$msgCommand.pl' doesn't exist - contact administrators - archive.pl collector.pl, importDataThroughCatalog.pl, generateReports.pl & holidayBundleSetDowntimes.pl - NEW function LOG_init_log4perl - collector.pl & importDataThroughCatalog.pl - NEW functions DBI_connect, DBI_do and DBI_execute - display.pl - ADDED CLOSECLICK & STICKY to force users to click on "Close" to close sticky popups - RSYNC TODO --exclude=*-status.txt Version 3.001.002, 2010/01/05, by Alex Peeters - NEW record_navigation_bar_alpha - change all record id > 0 for the 'auto_increment' '1' into this example, verify first and if needed replace '1' with correct value at 'displayGroups, holidaysBundle, reports & timeperiods' holidaysBundle: --------------- ALTER TABLE `plugins` CHANGE COLUMN `holidayBundleID` `holidayBundleID` int(11) default '1' SET FOREIGN_KEY_CHECKS=0 UPDATE `holidaysBundle` SET `holidayBundleID` = '1' where `holidayBundleID` = '0' UPDATE `plugins` SET `holidayBundleID` = '1' where `holidayBundleID` = '0' SET FOREIGN_KEY_CHECKS=1 displayGroups: -------------- ALTER TABLE `views` CHANGE COLUMN `displayGroupID` `displayGroupID` int(11) NOT NULL default '1' UPDATE `views` SET `displayGroupID` = '1' where `displayGroupID` = '0' UPDATE `displayGroups` SET `displayGroupID` = '1' where `displayGroupID` = '0' - create new index ALTER TABLE `catalog` ADD INDEX `catalogName` (`catalogName`) ALTER TABLE `collectorDaemons` ADD INDEX `collectorDaemon` (`collectorDaemon`) ALTER TABLE `countries` ADD INDEX `countryName` (`countryName`) ALTER TABLE `displayDaemons` ADD INDEX `displayDaemon` (`displayDaemon`) ALTER TABLE `displayGroups` ADD INDEX `groupTitle` (`groupTitle`) ALTER TABLE `holidays` ADD INDEX `holiday` (`holiday`) ALTER TABLE `holidaysBundle` ADD INDEX `holidayBundleName` (`holidayBundleName`) ALTER TABLE `language` ADD INDEX `languageName` (`languageName`) ALTER TABLE `pagedirs` ADD INDEX `pagedir` (`pagedir`) ALTER TABLE `reports` ADD INDEX `reportTitle` (`reportTitle`) ALTER TABLE `resultsdir` ADD INDEX `groupName` (`groupName`) ALTER TABLE `servers` ADD INDEX `serverTitle` (`serverTitle`) ALTER TABLE `timeperiods` ADD INDEX `timeperiodName` (`timeperiodName`) ALTER TABLE `users` ADD INDEX `remoteUser` (`remoteUser`) - NEW importDataThroughCatalog.sh and importDataThroughCatalog.pl ALTER TABLE `displayGroups` DROP INDEX `displayGroupID`, ADD INDEX `displayGroupID` (`displayGroupID`) ALTER TABLE `holidaysBundle` DROP INDEX `holidayBundleID`, ADD INDEX `holidayBundleID` (`holidayBundleID`) ALTER TABLE `reports` DROP INDEX `id`, ADD INDEX `id` (`id`) ALTER TABLE `timeperiods` DROP INDEX `timeperiodID`, ADD INDEX `timeperiodID` (`timeperiodID`) - NEW asnmtap-importDataThroughCatalog.sh and root-importDataThroughCatalog.sh - NEW integration for SDE (applications/custom/sde.pm-orig) into display.pl - NEW catalog.pl - UPDATE rsync 3.06 compatible - UPDATE autogenerated rsync *.conf with --exclude *.sql - UPDATE autogenerated 'Collector Start/Stop scripts' optimalisation - UPDATE runStatusOnDemand.pl with follow up for importDataThroughCatalog.pid - UPDATE optimalisation display.pl regarding encode html entities for the 'statusMessage' - UPDATE archive.pl, check_SNMPTT_probe.pl, check_snmptt_traps.pl, check_jUnit.pl & snmptt_traps_remove_pending_and_duplicated.pl 'INSERT INTO' with 'REPLACE INTO' before 'DELETE' Version 3.001.001, 2009/10/23, by Alex Peeters - UPDATE /applications/tools/mysql/asnmtap-3.001.001-database-schema.png - UPDATE TABLE `events` for MySQL - MySQL 4.x - SELECT CONCAT('alter table ', TABLE_SCHEMA , '.', table_name, ' MODIFY `test` varchar(254) NOT NULL default \'\';') FROM INFORMATION_SCHEMA.tables WHERE ENGINE = 'MYISAM' AND table_type='BASE TABLE' AND table_name regexp 'events_'; - TO GENERATE THE NEXT CODE FOR ALL YEARS - ALTER TABLE `events_yyyy_01` MODIFY `test` varchar(254) NOT NULL default ''; ... - ALTER TABLE `events_yyyy_12` MODIFY `test` varchar(254) NOT NULL default ''; - MySQL 5.0.x - SELECT CONCAT('alter table ', TABLE_SCHEMA , '.', table_name, ' MODIFY `test` varchar(512) NOT NULL default \'\';') FROM INFORMATION_SCHEMA.tables WHERE ENGINE = 'MYISAM' AND table_type='BASE TABLE' AND table_name regexp 'events_'; - TO GENERATE THE NEXT CODE FOR ALL YEARS - ALTER TABLE `events_yyyy_01` MODIFY `test` varchar(512) NOT NULL default ''; ... - ALTER TABLE `events_yyyy_12` MODIFY `test` varchar(512) NOT NULL default ''; - MySQL 4.x & MySQL 5.0.x - DROP TABLE `events_yyyy`; - CREATE TABLE IF NOT EXISTS `events_yyyy` LIKE `events_yyyy_01`; - ALTER TABLE `events_yyyy` ENGINE=MERGE UNION=(`events_yyyy_01`, `events_yyyy_02`, `events_yyyy_03`, `events_yyyy_04`, `events_yyyy_05`, `events_yyyy_06`, `events_yyyy_07`, `events_yyyy_08`, `events_yyyy_09`, `events_yyyy_10`, `events_yyyy_11`, `events_yyyy_12`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q1`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q1` LIKE `events_yyyy_01`; - ALTER TABLE `events_yyyy_Q1` ENGINE=MERGE UNION=(`events_yyyy_01`, `events_yyyy_02`, `events_yyyy_03`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q2`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q2` LIKE `events_yyyy_04`; - ALTER TABLE `events_yyyy_Q2` ENGINE=MERGE UNION=(`events_yyyy_04`, `events_yyyy_05`, `events_yyyy_06`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q3`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q3` LIKE `events_yyyy_07`; - ALTER TABLE `events_yyyy_Q3` ENGINE=MERGE UNION=(`events_yyyy_07`, `events_yyyy_08`, `events_yyyy_09`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q4`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q4` LIKE `events_yyyy_10`; - ALTER TABLE `events_yyyy_Q4` ENGINE=MERGE UNION=(`events_yyyy_10`, `events_yyyy_11`, `events_yyyy_12`) INSERT_METHOD=LAST; - UPDATE generateConfig.pl for the autogeneration from: asnmtap-collector.sh - when there are servers configurated in failover - onto the active server: only the file 'Display-.sh' and 'Collector-.sh' are included - onto both servers: are both files 'CollectorCT-.sh' included when eq - UPDATE generateConfig.pl for the autogeneration from: rsync-wrapper-failover-.sh & rsync-mirror-failover-.sh Version 3.001.000, 2009/10/03, by Alex Peeters - ASNMTAP: CATALOG databaseschema implementation # `catalogID` =~ 'CID', aanpassen AUB - UPDATE /applications/Applications.cfg # ... # CATALOGID CID # - UPDATE /applications/tools/mysql/asnmtap-3.001.000.sql - UPDATE /applications/tools/mysql/asnmtap-3.001.000_mysql-v5.0.x.sql - UPDATE /applications/tools/mysql/asnmtap-3.001.000-distributed.sql - UPDATE /applications/tools/mysql/asnmtap-3.001.000-distributed_mysql-v5.0.x.sql - insert into `holidaysBundle` (`holidayBundleID`,`holidayBundleName`,`holidayID`,`countryID`,`activated`) values (0,'ASNMTAP','/0-0-0-0-00/','BE',0); - manualy update holidayBundleID to '?' for holidayBundleName = 'ASNMTAP' and holidayID = '/0-0-0-0-00/' ! where '?' is a not used holidayBundleID <> '0' - NEW TABLE `catalog` for MySQL' CREATE TABLE `catalog` ( `catalogID` varchar(5) NOT NULL default 'CID', `catalogName` varchar(64) NOT NULL default '', `catalogType` ENUM('central','federated','probe','distributed') NOT NULL DEFAULT 'probe', `databaseFQDN` varchar(64) NOT NULL default 'localhost', `databasePort` varchar(4) NOT NULL default '3306', `lastEventsID` int(11) NOT NULL default '0', `lastCommentsID` int(11) NOT NULL default '0', `activated` tinyint(1) NOT NULL default '0', PRIMARY KEY (`catalogID`) ) ENGINE=InnoDB; - insert into `catalog` (`catalogID`,`catalogName`,`catalogType`,`databaseFQDN`,`databasePort`,`lastEventsID`,`lastCommentsID`,`activated`) values ('CID','Central System Enterprise','central','localhost','3306',0,0,1); - UPDATE TABLE `servers` for MySQL' - ALTER TABLE `servers` ADD COLUMN `typeActiveServer` char(1) NOT NULL DEFAULT 'M' AFTER `typeMonitoring`; # ------------------------------------ - ALTER TABLE `collectorDaemons` DROP FOREIGN KEY `collectorDaemons_ibfk_2`; - ALTER TABLE `comments` DROP FOREIGN KEY `comments_ibfk_1`; - ALTER TABLE `comments` DROP FOREIGN KEY `comments_ibfk_2`; - ALTER TABLE `crontabs` DROP FOREIGN KEY `crontabs_ibfk_1`; - ALTER TABLE `crontabs` DROP FOREIGN KEY `crontabs_ibfk_2`; - ALTER TABLE `displayDaemons` DROP FOREIGN KEY `displayDaemons_ibfk_1`; - ALTER TABLE `displayDaemons` DROP FOREIGN KEY `displayDaemons_ibfk_2`; - ALTER TABLE `holidays` DROP FOREIGN KEY `holidays_ibfk_1`; - ALTER TABLE `holidaysBundle` DROP FOREIGN KEY `holidaysBundle_ibfk_1`; - ALTER TABLE `plugins` DROP FOREIGN KEY `plugins_ibfk_1`; - ALTER TABLE `reports` DROP FOREIGN KEY `reports_ibfk_1`; - ALTER TABLE `reports` DROP FOREIGN KEY `reports_ibfk_2`; - ALTER TABLE `users` DROP FOREIGN KEY `users_ibfk_1`; - ALTER TABLE `views` DROP FOREIGN KEY `views_ibfk_1`; - ALTER TABLE `views` DROP FOREIGN KEY `views_ibfk_2`; - ALTER TABLE `views` DROP FOREIGN KEY `views_ibfk_3`; # ------------------------------------ - ALTER TABLE `collectorDaemons` DROP PRIMARY KEY; - ALTER TABLE `collectorDaemons` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `collectorDaemons` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `collectorDaemons` ADD PRIMARY KEY (`catalogID`,`collectorDaemon`); - ALTER TABLE `comments` ADD UNIQUE KEY `id` (`id`); - ALTER TABLE `comments` DROP PRIMARY KEY; - ALTER TABLE `comments` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `comments` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `comments` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `comments` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `comments` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `comments_yyyy` ADD UNIQUE KEY `id` (`id`); - ALTER TABLE `comments_yyyy` DROP PRIMARY KEY; - ALTER TABLE `comments_yyyy` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `comments_yyyy` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `comments_yyyy` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `comments_yyyy` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `comments_yyyy` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `crontabs` DROP PRIMARY KEY; - ALTER TABLE `crontabs` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `crontabs` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `crontabs` ADD PRIMARY KEY (`catalogID`,`lineNumber`,`uKey`); - ALTER TABLE `displayDaemons` DROP PRIMARY KEY; - ALTER TABLE `displayDaemons` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `displayDaemons` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `displayDaemons` ADD PRIMARY KEY (`catalogID`,`displayDaemon`); - ALTER TABLE `displayDaemons` DROP KEY `pagedir`; - ALTER TABLE `displayDaemons` ADD UNIQUE KEY `pagedir` (`catalogID`,`pagedir`); - ALTER TABLE `displayGroups` ADD UNIQUE KEY `displayGroupID` (`displayGroupID`); - ALTER TABLE `displayGroups` DROP PRIMARY KEY; - ALTER TABLE `displayGroups` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `displayGroups` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `displayGroups` ADD PRIMARY KEY (`catalogID`,`displayGroupID`); - ALTER TABLE `eventsChangesLogData` DROP PRIMARY KEY; - ALTER TABLE `eventsChangesLogData` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `eventsChangesLogData` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `eventsChangesLogData` ADD INDEX `uKey` (`uKey`); - ALTER TABLE `eventsChangesLogData` ADD PRIMARY KEY (`catalogID`,`uKey`); - ALTER TABLE `eventsChangesLogData` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `eventsChangesLogData` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `holidays` DROP PRIMARY KEY; - ALTER TABLE `holidays` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `holidays` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `holidays` ADD PRIMARY KEY (`catalogID`,`holidayID`); - ALTER TABLE `holidaysBundle` ADD UNIQUE KEY `holidayBundleID` (`holidayBundleID`); - ALTER TABLE `holidaysBundle` DROP PRIMARY KEY; - ALTER TABLE `holidaysBundle` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `holidaysBundle` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `holidaysBundle` ADD PRIMARY KEY (`catalogID`,`holidayBundleID`); - ALTER TABLE `pagedirs` DROP PRIMARY KEY; - ALTER TABLE `pagedirs` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `pagedirs` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `pagedirs` ADD PRIMARY KEY (`catalogID`,`pagedir`); - ALTER TABLE `plugins` DROP PRIMARY KEY; - ALTER TABLE `plugins` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `plugins` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `plugins` ADD INDEX `uKey` (`uKey`); - ALTER TABLE `plugins` ADD PRIMARY KEY (`catalogID`,`uKey`); - ALTER TABLE `reports` ADD UNIQUE KEY `id` (`id`); - ALTER TABLE `reports` DROP PRIMARY KEY; - ALTER TABLE `reports` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `reports` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `reports` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `reports_perfdata` DROP PRIMARY KEY; - ALTER TABLE `reports_perfdata` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `reports_perfdata` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `reports_perfdata` ADD PRIMARY KEY (`catalogID`,`uKey`,`metric_id`); - ALTER TABLE `resultsdir` DROP PRIMARY KEY; - ALTER TABLE `resultsdir` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `resultsdir` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `resultsdir` ADD PRIMARY KEY (`catalogID`,`resultsdir`); - ALTER TABLE `servers` DROP PRIMARY KEY; - ALTER TABLE `servers` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `servers` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `servers` ADD PRIMARY KEY (`catalogID`,`serverID`); - ALTER TABLE `timeperiods` ADD UNIQUE KEY `timeperiodID` (`timeperiodID`); - ALTER TABLE `timeperiods` DROP PRIMARY KEY; - ALTER TABLE `timeperiods` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `timeperiods` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `timeperiods` ADD PRIMARY KEY (`catalogID`,`timeperiodID`); - ALTER TABLE `users` DROP PRIMARY KEY; - ALTER TABLE `users` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `users` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `users` ADD PRIMARY KEY (`catalogID`,`remoteUser`); - ALTER TABLE `views` DROP PRIMARY KEY; - ALTER TABLE `views` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `views` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `views` ADD PRIMARY KEY (`catalogID`,`uKey`,`displayDaemon`); # ------------------------------------ - ALTER TABLE `collectorDaemons` ADD CONSTRAINT `collectorDaemons_ibfk_1` FOREIGN KEY (`catalogID`,`serverID`) REFERENCES `servers` (`catalogID`,`serverID`); - ALTER TABLE `comments` ADD CONSTRAINT `comments_ibfk_1` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); - ALTER TABLE `comments` ADD CONSTRAINT `comments_ibfk_2` FOREIGN KEY (`catalogID`,`remoteUser`) REFERENCES `users` (`catalogID`,`remoteUser`); - ALTER TABLE `crontabs` ADD CONSTRAINT `crontabs_ibfk_1` FOREIGN KEY (`catalogID`,`collectorDaemon`) REFERENCES `collectorDaemons` (`catalogID`,`collectorDaemon`); - ALTER TABLE `crontabs` ADD CONSTRAINT `crontabs_ibfk_2` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); - ALTER TABLE `displayDaemons` ADD CONSTRAINT `displayDaemons_ibfk_1` FOREIGN KEY (`catalogID`,`pagedir`) REFERENCES `pagedirs` (`catalogID`,`pagedir`); - ALTER TABLE `displayDaemons` ADD CONSTRAINT `displayDaemons_ibfk_2` FOREIGN KEY (`catalogID`,`serverID`) REFERENCES `servers` (`catalogID`,`serverID`); - ALTER TABLE `eventsChangesLogData` ADD INDEX `eventsChangesLogData_ibfk_1` (`catalogID`,`uKey`); - ALTER TABLE `eventsChangesLogData` ADD CONSTRAINT `eventsChangesLogData_ibfk_1` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); - ALTER TABLE `holidays` ADD CONSTRAINT `holidays_ibfk_1` FOREIGN KEY (`countryID`) REFERENCES `countries` (`countryID`); - ALTER TABLE `holidaysBundle` ADD CONSTRAINT `holidaysBundle_ibfk_1` FOREIGN KEY (`countryID`) REFERENCES `countries` (`countryID`); - ALTER TABLE `plugins` ADD CONSTRAINT `plugins_ibfk_1` FOREIGN KEY (`catalogID`,`resultsdir`) REFERENCES `resultsdir` (`catalogID`,`resultsdir`); - ALTER TABLE `plugins` ADD INDEX `plugins_ibfk_2` (`catalogID`,`holidayBundleID`); - ALTER TABLE `plugins` ADD CONSTRAINT `plugins_ibfk_2` FOREIGN KEY (`catalogID`,`holidayBundleID`) REFERENCES `holidaysBundle` (`catalogID`,`holidayBundleID`); - ALTER TABLE `reports` ADD CONSTRAINT `reports_ibfk_1` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); - ALTER TABLE `reports` ADD CONSTRAINT `reports_ibfk_2` FOREIGN KEY (`catalogID`,`timeperiodID`) REFERENCES `timeperiods` (`catalogID`,`timeperiodID`); - ALTER TABLE `reports_perfdata` ADD CONSTRAINT `reports_perfdata_ibfk_1` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); - ALTER TABLE `titles` ADD CONSTRAINT `titles_ibfk_1` FOREIGN KEY (`keyLanguage`) REFERENCES `language` (`keyLanguage`); - ALTER TABLE `users` ADD CONSTRAINT `users_ibfk_1` FOREIGN KEY (`keyLanguage`) REFERENCES `language` (`keyLanguage`); - ALTER TABLE `views` ADD CONSTRAINT `views_ibfk_1` FOREIGN KEY (`catalogID`,`displayDaemon`) REFERENCES `displayDaemons` (`catalogID`,`displayDaemon`); - ALTER TABLE `views` ADD CONSTRAINT `views_ibfk_2` FOREIGN KEY (`catalogID`,`displayGroupID`) REFERENCES `displayGroups` (`catalogID`,`displayGroupID`); - ALTER TABLE `views` ADD CONSTRAINT `views_ibfk_3` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); # ------------------------------------ # START HIGH IMPACT ! # ------------------------------------ - ALTER TABLE `events` ADD UNIQUE KEY `id` (`id`); - ALTER TABLE `events` DROP PRIMARY KEY; - ALTER TABLE `events` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `events` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `events` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `events` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `events` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `events` ADD INDEX `events_ibfk_1` (`catalogID`,`uKey`); - ALTER TABLE `events` ADD CONSTRAINT `events_ibfk_2` FOREIGN KEY (`catalogID`,`uKey`) REFERENCES `plugins` (`catalogID`,`uKey`); # ------------------------------------ # END HIGH IMPACT ! # ------------------------------------ - SELECT CONCAT('alter table ', TABLE_SCHEMA , '.', table_name, ' ADD UNIQUE INDEX `id` (`id`), DROP PRIMARY KEY, ADD COLUMN `catalogID` varchar(5) NOT NULL default \'CID\' FIRST, ADD INDEX `catalogID` (`catalogID`), ADD PRIMARY KEY (`catalogID`,`id`), ADD COLUMN `replicationStatus` ENUM(\'I\',\'U\',\'R\') NOT NULL DEFAULT \'I\' AFTER `uKey`, ADD INDEX `replicationStatus` (`replicationStatus`), ADD INDEX `events_ibfk_1` (`catalogID`,`uKey`);') FROM INFORMATION_SCHEMA.tables WHERE ENGINE = 'MYISAM' AND table_type='BASE TABLE' AND table_name regexp 'events_'; - TO GENERATE THE NEXT CODE FOR ALL YEARS - ALTER TABLE `events_yyyy_01` ADD UNIQUE INDEX `id` (`id`); - ALTER TABLE `events_yyyy_01` DROP PRIMARY KEY; - ALTER TABLE `events_yyyy_01` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `events_yyyy_01` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `events_yyyy_01` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `events_yyyy_01` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `events_yyyy_01` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `events_yyyy_01` ADD INDEX `events_ibfk_1` (`catalogID`,`uKey`); ... - ALTER TABLE `events_yyyy_12` ADD UNIQUE INDEX `id` (`id`); - ALTER TABLE `events_yyyy_12` DROP PRIMARY KEY; - ALTER TABLE `events_yyyy_12` ADD COLUMN `catalogID` varchar(5) NOT NULL default 'CID' FIRST; - ALTER TABLE `events_yyyy_12` ADD INDEX `catalogID` (`catalogID`); - ALTER TABLE `events_yyyy_12` ADD COLUMN `replicationStatus` ENUM('I','U','R') NOT NULL DEFAULT 'I' AFTER `uKey`; - ALTER TABLE `events_yyyy_12` ADD INDEX `replicationStatus` (`replicationStatus`); - ALTER TABLE `events_yyyy_12` ADD PRIMARY KEY (`catalogID`,`id`); - ALTER TABLE `events_yyyy_12` ADD INDEX `events_ibfk_1` (`catalogID`,`uKey`); - DROP TABLE `events_yyyy`; - CREATE TABLE IF NOT EXISTS `events_yyyy` LIKE `events_yyyy_01`; - ALTER TABLE `events_yyyy` ENGINE=MERGE UNION=(`events_yyyy_01`, `events_yyyy_02`, `events_yyyy_03`, `events_yyyy_04`, `events_yyyy_05`, `events_yyyy_06`, `events_yyyy_07`, `events_yyyy_08`, `events_yyyy_09`, `events_yyyy_10`, `events_yyyy_11`, `events_yyyy_12`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q1`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q1` LIKE `events_yyyy_01`; - ALTER TABLE `events_yyyy_Q1` ENGINE=MERGE UNION=(`events_yyyy_01`, `events_yyyy_02`, `events_yyyy_03`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q2`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q2` LIKE `events_yyyy_04`; - ALTER TABLE `events_yyyy_Q2` ENGINE=MERGE UNION=(`events_yyyy_04`, `events_yyyy_05`, `events_yyyy_06`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q3`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q3` LIKE `events_yyyy_07`; - ALTER TABLE `events_yyyy_Q3` ENGINE=MERGE UNION=(`events_yyyy_07`, `events_yyyy_08`, `events_yyyy_09`) INSERT_METHOD=LAST; - DROP TABLE `events_yyyy_Q4`; - CREATE TABLE IF NOT EXISTS `events_yyyy_Q4` LIKE `events_yyyy_10`; - ALTER TABLE `events_yyyy_Q4` ENGINE=MERGE UNION=(`events_yyyy_10`, `events_yyyy_11`, `events_yyyy_12`) INSERT_METHOD=LAST; # ------------------------------------ ArchiveCT, CollectorCT-* & DisplayCT-* - replace '' with '[_]' Implemented catalogID to all *.pl & *.pm files Plugin templates - NEW WebTransact XML Monitoring plugin template for testing the 'Application Monitor' for Monitoring-1.2.xml - check_template-mail-xml-fingerprint-xml-monitoring-1.2.pl - check_template-WebTransact-XML-Monitoring-1.2.pl - /dtd/Fingerprint-1.0-and-monitoring-1.2-xml-validator.html - /dtd/Monitoring-1.2.dtd - /xml/Monitoring-1.2.xml - /xml/Monitoring-1.2-doNotValidate.xml - /xml/Monitoring-1.2-errorParsing.xml Version 3.000.021, 2009/xx/yy, by Alex Peeters - ASNMTAP - NEW /cgi-bin/moderator/downtimes.pl Set downtimes by uploading of a uKey file - NEW /plugins/templates/check_template-cluster.pl - UPDATE applications/tools/mysql/asnmtap-3.000.021.sql - UPDATE applications/tools/mysql/asnmtap-3.000.021_mysql-v5.0.x.sql - UPDATE applications/tools/mysql/asnmtap-3.000.021-distributed.sql - UPDATE applications/tools/mysql/asnmtap-3.000.021-distributed_mysql-v5.0.x.sql Version 3.000.020, 2009/04/19, by Alex Peeters - ASNMTAP - UPDATE /plugins/templates/snmptt/ - NEW check_SNMPTT_oracle.pl - NEW snmptt-oracle.conf - NEW %ICONSUNSTABLE = ('OK'=>'green-unstable.gif','WARNING'=>'yellow-unstable.gif','CRITICAL'=>'red-unstable.gif','UNKNOWN'=>'clear-unstable.gif','DEPENDENT'=>'','OFFLINE'=>'blue-unstable.gif','NO DATA'=>'purple-unstable.gif','IN PROGRESS'=>'running.gif','NO TEST'=>'notest-unstable.gif','TRENDLINE'=>'orange-unstable.gif'); - UPDATE /applications/tools/mysql/asnmtap-3.000.020.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.020_mysql-v5.0.x.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.020-distributed.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.020-distributed_mysql-v5.0.x.sql - NEW TABLE `eventsChangesLogData` for MySQL' CREATE TABLE `eventsChangesLogData` ( `uKey` varchar(11) NOT NULL default '', `lastStatus` varchar(9) NOT NULL default '', `lastTimeslot` varchar(10) NOT NULL default '', `prevStatus` varchar(9) NOT NULL default '', `prevTimeslot` varchar(10) NOT NULL default '', PRIMARY KEY (`uKey`) ) ENGINE=InnoDB; - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.020.SQL - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.020_mysql-v5.0.x.SQL - NEW TABLE `QUEUES` for MySQL' CREATE TABLE `QUEUES` ( `QUEUE_NAME` varchar(64) NOT NULL default '', `QUEUE_OID` varchar(254) default NULL, `ENV` varchar(4) default NULL, `ACTIVATED` tinyint(1) unsigned default '1', `CURRENT_TIMESTAMP` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `VIRTUAL_CLUSTER_ID` int(11) unsigned NOT NULL default '0', `UKEY` varchar(11) default NULL, PRIMARY KEY (`QUEUE_OID`,`QUEUE_NAME`), KEY `VIRTUAL_CLUSTER_ID` (`VIRTUAL_CLUSTER_ID`), KEY `QUEUE_NAME` (`QUEUE_NAME`), KEY `UKEY` (`UKEY`) ) ENGINE=MyISAM - UPDATE /applications/Applications.cfg # ... # EVENTSCHANGESLOGDATA eventsChangesLogData ... # # OK green-unstable.gif # WARNING yellow-unstable.gif # CRITICAL red-unstable.gif # UNKNOWN clear-unstable.gif # DEPENDENT # OFFLINE blue-unstable.gif # NO_DATA purple-unstable.gif # IN_PROGRESS running.gif # NO_TEST notest-unstable.gif # TRENDLINE orange-unstable.gif # - UPDATE Applications.pm, CGI.PM, Collector.pm & Display.pm - NEW $SERVERTABLEVENTSCHNGSLGDT -> ´eventsChangesLogData´ - NEW WebTransact XML Monitoring plugin template for testing the 'Application Monitor' for Monitoring-1.1.xml - check_template-WebTransact-XML-Monitoring-1.1.pl - NEW common variable RUNCMDONDEMAND to Asnmtap.cnf # RUNCMDONDEMAND localhost # localhost or probe Version 3.000.019, 2009/01/03, by Alex Peeters with contributions from Yves Van den Hove. - ASNMTAP UPDATE '#!/bin/env perl' with '#!/usr/bin/env perl' replace '[a-z|A-Z|0-9|-]' with '[a-zA-Z0-9-]' - plugins/templates NEW /dtd/Monitoring-1.1.dtd NEW /dtd/Fingerprint-1.0-and-monitoring-1.0-xml-validator.html NEW /dtd/Fingerprint-1.0-and-monitoring-1.1-xml-validator.html NEW /xml/Monitoring-1.1.xml NEW /xml/Monitoring-1.1-doNotValidate.xml NEW /xml/Monitoring-1.1-errorParsing.xml - /cgi-bin/runCmdOnDemand.pl On Demand test now launched on the same probe as the collector that runs the test - check_MySQL-database-replication.pl - Added Slave IO detection - /plugins/junit, making weblogic 10 compatible - UPDATE check_jUnit.pl - UPDATE create_ASNMTAP_jUnit_configuration_for_jUnit.pl - UPDATE create_ASNMTAP_jUnit_configuration_for_jUnit-3.000.019_mysql.SQL - UPDATE create_ASNMTAP_jUnit_configuration_for_jUnit-3.000.019_mysql-v5.0.x.SQL - UPDATE TABLE `BASE_SERVICES` for 'MySQL' - ALTER TABLE `BASE_SERVICES` CHANGE COLUMN `STATUS` `STATUS` enum('ASNMTAP','NEW','MAINTENANCE','EOL') NOT NULL default 'NEW'; - UPDATE TABLE `SERVER` for 'MySQL' - ALTER TABLE `SERVER` ADD COLUMN `WEBLOGIC_VERSION` enum('8','10') default '10' AFTER `ENV`; - /plugins/snmptt - UPDATE snmptt-3.000.019.sql - UPDATE snmptt-3.000.019-v5.0.x.sql - UPDATE TABLE `snmptt` for MySQL' - ALTER TABLE `snmptt` ADD COLUMN `archivetime` timestamp(14) NOT NULL AFTER `uniqueProblem`; - UPDATE TABLE `snmptt_unknown` for MySQL' - ALTER TABLE `snmptt_unknown` ADD COLUMN `archivetime` timestamp(14) NOT NULL AFTER `trapread`; - UPDATE TABLE `snmptt_unknown_archive` for MySQL' - ALTER TABLE `snmptt_unknown_archive` ADD COLUMN `archivetime` timestamp(14) NOT NULL AFTER `trapread`; - UPDATE TABLE `snmptt_archive` for MySQL' - ALTER TABLE `snmptt_archive` ADD COLUMN `archivetime` timestamp(14) NOT NULL AFTER `uniqueProblem`; - added comment type 'masterASNMTAP_PATH' & 'slaveASNMTAP_PATH' to servers.pl - UPDATE /applications/tools/mysql/asnmtap-3.000.019.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019_mysql-v5.0.x.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019-distributed.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019-distributed_mysql-v5.0.x.sql - UPDATE TABLE `servers` for MySQL' - ALTER TABLE `servers` ADD COLUMN `masterASNMTAP_PATH` varchar(64) NOT NULL default '/opt/asnmtap' AFTER `masterFQDN`, ADD COLUMN `slaveASNMTAP_PATH` varchar(64) NOT NULL default '/opt/asnmtap' AFTER `slaveFQDN`; - ALTER TABLE `servers` ADD COLUMN `masterSSH_PATH` varchar(64) NOT NULL default '/usr/bin' AFTER `masterASNMTAP_PATH`, ADD COLUMN `slaveSSH_PATH` varchar(64) NOT NULL default '/usr/bin' AFTER `slaveASNMTAP_PATH`; - ALTER TABLE `servers` ADD COLUMN `masterRSYNC_PATH` varchar(64) NOT NULL default '/usr/local/bin' AFTER `masterASNMTAP_PATH`, ADD COLUMN `slaveRSYNC_PATH` varchar(64) NOT NULL default '/usr/local/bin' AFTER `slaveASNMTAP_PATH`; - added comment type 'instability' to archiver.pl, display.pl, collector.pl, comments.pl & detailedStatisticsReportGenerationAndCompareResponsetimeTrends.pl - UPDATE /applications/tools/mysql/asnmtap-3.000.019.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019_mysql-v5.0.x.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019-distributed.sql - UPDATE /applications/tools/mysql/asnmtap-3.000.019-distributed_mysql-v5.0.x.sql - UPDATE TABLE `events`, `events_yyyy_mm` & `events_Qx` for MySQL' - ALTER TABLE `events` ADD COLUMN `instability` tinyint(1) NOT NULL default '9' AFTER `timeslot`; - ALTER TABLE `events_2008_01` ADD COLUMN `instability` tinyint(1) NOT NULL default '9' AFTER `timeslot`; ... - ALTER TABLE `events_2008_12` ADD COLUMN `instability` tinyint(1) NOT NULL default '9' AFTER `timeslot`; - DROP TABLE `events_2008`; - CREATE TABLE IF NOT EXISTS `events_2008` LIKE `events_2008_01`; - ALTER TABLE `events_2008` ENGINE=MERGE UNION=(`events_2008_01`, `events_2008_02`, `events_2008_03`, `events_2008_04`, `events_2008_05`, `events_2008_06`, `events_2008_07`, `events_2008_08`, `events_2008_09`, `events_2008_10`, `events_2008_11`, `events_2008_12`) INSERT_METHOD=LAST; - DROP TABLE `events_2008_Q1`; - CREATE TABLE IF NOT EXISTS `events_2008_Q1` LIKE `events_2008_01`; - ALTER TABLE `events_2008_Q1` ENGINE=MERGE UNION=(`events_2008_01`, `events_2008_02`, `events_2008_03`) INSERT_METHOD=LAST; - DROP TABLE `events_2008_Q2`; - CREATE TABLE IF NOT EXISTS `events_2008_Q2` LIKE `events_2008_04`; - ALTER TABLE `events_2008_Q2` ENGINE=MERGE UNION=(`events_2008_04`, `events_2008_05`, `events_2008_06`) INSERT_METHOD=LAST; - DROP TABLE `events_2008_Q3`; - CREATE TABLE IF NOT EXISTS `events_2008_Q3` LIKE `events_2008_07`; - ALTER TABLE `events_2008_Q3` ENGINE=MERGE UNION=(`events_2008_07`, `events_2008_08`, `events_2008_09`) INSERT_METHOD=LAST; - DROP TABLE `events_2008_Q4`; - CREATE TABLE IF NOT EXISTS `events_2008_Q4` LIKE `events_2008_10`; - ALTER TABLE `events_2008_Q4` ENGINE=MERGE UNION=(`events_2008_10`, `events_2008_11`, `events_2008_12`) INSERT_METHOD=LAST; - ALTER TABLE `comments` ADD COLUMN `instability` tinyint(1) NOT NULL default '0' AFTER `remoteUser`; - ALTER TABLE `comments_2008` ADD COLUMN `instability` tinyint(1) NOT NULL default '0' AFTER `remoteUser`; - SNMPTT making Weblogic 10 compatible: - /plugins/snmptt/ - FIX create_ASNMTAP_weblogic_configuration_for_SNMP.pl: my $pluginTest = 'check_SNMPTT_weblogic.pl'; - UPDATE create_ASNMTAP_weblogic_configuration_for_SNMP.pl - UPDATE create_NCPL_weblogic_configuration_for_SNMP.pl - UPDATE create_weblogic_configuration_database_with_SNMP.pl - UPDATE create_weblogic_configuration_for_SNMPTT.pl - /plugins/templates/snmptt/ - UPDATE check_SNMPTT_weblogic.pl - UPDATE snmptt-bea-weblogic.conf - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.019.SQL - PRIMARY KEY + `trapMBeanType_MATCH` - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.019_mysql-v5.0.x.SQL - PRIMARY KEY + `trapMBeanType_MATCH` Version 3.000.018, 2008/07/07, by Alex Peeters. - security update Version 3.000.017, 2008/06/09, by Alex Peeters with contributions from Yves Van den Hove. Makefile.PL - version update Bundle::DBI: 1.604 - version update CGI: 3.37 - version update CGI::Session: 4.30 - version update CPAN: 1.9205 - version update CPANPLUS: 0.84 - version update Compress::Zlib: 2.010 - version update Config::General: 2.38 - version update Crypt::OpenSSL::X509: 0.6 - version update Crypt::SSLeay: 0.57 - version update Cwd: 3.2701 - version update DateTime: 0.42 - version update DateTime::Format::Epoch: 0.11 - version update Email::Simple: 2.003 - version update Getopt::Long: 2.37 - version update HTTP::Daemon::SSL: 1.04 - version update IO::CaptureOutput: 1.0801 - version update IO::Socket::SSL: 1.13 - version added IO::String 1.08 - version update Mail::POP3Client: 2.18 - version update Net::IMAP::Simple: 1.17 - version update Net::SSLeay: 1.32 - version update Proc::ProcessTable: 0.42 - version update SOAP::Lite: 0.710.05 - version update Test::Builder::Tester: 1.13 - version update Test::Simple: 0.80 - version update URI: 1.36 - version update XML::LibXML: 1.66 - version update XML::Parser: 2.36 - version update XML::Simple: 2.18 ASNMTAP::Asnmtap - Making Solaris 10 zone compatible - UPDATE: all *.t test files - UPDATE: replace '/cgi-bin' with '/asnmtap/cgi-bin' - UPDATE: added variable DIFF to Asnmtap.cnf - UPDATE: replace '$Rsync ...' with '$Rsync --rsync-path=$RsyncPath ...' - UPDATE: rsync --exclude=*-KnownError --exclude=*.tmp ASNMTAP::Asnmtap::Applications - Applications.cnf ... # # ENABLED 1 # '0' or '1' # - archiver.pl: making MySQL 5.0.51 compatible - display.pl: - NEW 'Minimal Condenced View', index-mcv.html - FIX for 1727568 Bij wisselen omgeving op dezelfde pagina blijven. ASNMTAP::Asnmtap::Applications::CGI - htmlToPdf.pl: FIX for 1768193 PDF issues with Adobe Acrobat 8 - reports.pl: replace `reportTitle='` with `reportTitle="'` ASNMTAP::Asnmtap::Plugins - check_jUnit.pl - UPDATE: xml layout optimalisation - check_memory-free.pl - UPDATE: making Blastwave compatible ASNMTAP::Asnmtap::Plugins::Mail.pm - FIX regarding MIME-Encoding '7bit' into MIME-tools-5.425 ASNMTAP::Asnmtap::Plugins::Nagios - NEW check_nagiosv3-comments-cleanup.pl ASNMTAP::Asnmtap::Plugins::Webtransact.pm - NEW triesTiming & triesCodes ATTENTION --> asnmtap-3.000.017.sql, asnmtap-3.000.017-distributed.sql, asnmtap-3.000.017_mysql-v5.0.x.sql & asnmtap-3.000.017-distributed_mysql-v5.0.x.sql - add `reportTitle` varchar(100) NOT NULL default '' to table reports apache config - UPDATE: replace 'ScriptAlias /cgi-bin/ ...' with 'ScriptAlias /asnmtap/cgi-bin/ ...' Version 3.000.016, 2008/02/13, by Alex Peeters with contributions from Yves Van den Hove. ASNMTAP - UPDATE fixRights.sh - UPDATE '#!/usr/bin perl' or '#!/usr/local/bin/perl' with '#!/bin/env perl' to use the perl version found by the environment variable PATH http://www.cyberciti.biz/tips/finding-bash-perl-python-portably-using-env.html ASNMTAP::Applications - archive.pl - FIXED (1863109) createCommentsAndEventsArchiveTables at the end of the year - holidayBundleSetDowntimes.pl - NEW (1725445) Groeperen Mails ASNMTAP::Asnmtap::Applications.pod - FIXED MySQL GRANT configuration part ASNMTAP::Asnmtap::Applications::CGI - /applications/htmlroot/snmptraps/include/classes/class.mysqlDB.php - UPDATE class.mysqlDB.php - generateConfig.pl - FIX (1822759) A first time config generate/install doesn't say what actions need to be done on a server - reports.pl - FIX (1827421) Added reportTitle ASNMTAP::Asnmtap::Plugins - /plugins/nagios/check_network_interface_traffic.pl - UPDATE making Solaris 10 compatible - /plugins/jUnit/ - UPDATE create_ASNMTAP_jUnit_configuration_for_jUnit.pl - /plugins/snmptt/ - UPDATE check_snmptt_traps.pl - NEW check_snmptt_traps.plN - /plugins/templates/ - UPDATE check_template-WebTransact.pl - /plugins/templates/jUnit/ - NEW create_ASNMTAP_jUnit_configuration_for_jUnit-3.000.016_mysql.SQL - NEW create_ASNMTAP_jUnit_configuration_for_jUnit-3.000.016_mysql-v5.0.x.SQL - /plugins/templates/snmptt/ - NEW check_SNMPTT_probe.pl - UPDATE check_SNMPTT_weblogic.pl - NEW snmptt-3.000.016-v5.0.x.sql - UPDATE TABLE `snmmptt` for MySQL' version 5.x - ALTER TABLE `snmptt` CHANGE COLUMN `formatline` `formatline` varchar(1024) default NULL; - ALTER TABLE `snmptt_archive` CHANGE COLUMN `formatline` `formatline` varchar(1024) default NULL; - ALTER TABLE `snmptt_unknown` CHANGE COLUMN `formatline` `formatline` varchar(1024) default NULL; - ALTER TABLE `snmptt_unknown_archive` CHANGE COLUMN `formatline` `formatline` varchar(1024) default NULL; - UPDATE TABLE `wls_snmptt_CONFIG` - ALTER TABLE `wls_snmptt_CONFIG` CHANGE COLUMN `trapMBeanType` `trapMBeanType` varchar(128) NOT NULL default ''; - ALTER TABLE `wls_snmptt_CONFIG` CHANGE COLUMN `trapAttributeName` `trapAttributeName` varchar(128) NOT NULL default ''; - ALTER TABLE `wls_snmptt_CONFIG` CHANGE COLUMN `trapMonitorType` `trapMonitorType` varchar(128) NOT NULL default ''; - ALTER TABLE `wls_snmptt_CONFIG` ADD COLUMN `trapLogSeverity` varchar(128) NOT NULL default '' AFTER `trapMonitorType_MATCH`, ADD COLUMN `trapLogSeverity_MATCH` char(2) default NULL AFTER `trapLogSeverity`, ADD COLUMN `trapLogMessage` varchar(128) NOT NULL default '' AFTER `trapLogSeverity_MATCH`, ADD COLUMN `trapLogMessage_MATCH` char(3) default NULL AFTER `trapLogMessage`; - ALTER TABLE `wls_snmptt_CONFIG` DROP PRIMARY KEY, ADD PRIMARY KEY (`trapMBeanType`,`trapAttributeName`,`trapMonitorType`, `trapLogSeverity`, `trapLogMessage`, `event_name`,`category`,`sources_list`,`mode`); - UPDATE snmptt-bea-weblogic.conf - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.016.SQL - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.016_mysql-v5.0.x.SQL ASNMTAP::Asnmtap::Plugins::Mail.pm - FIX regarding MIME-Encoding 'quoted-printable' into MIME-tools-5.425 ASNMTAP::Asnmtap::Plugins::Nagios - NEW Makefile.PL Net::Ifconfig::Wrapper ASNMTAP::Asnmtap::Plugins::WebTransact - UPDATE POD with 'Qs_var => [..., submain => RET_SUBMAIN, title1 => RET_TITLE1]' Version 3.000.015, 2007/10/21, by Alex Peeters with contributions from Yves Van den Hove. Makefile.PL - version update CPAN 1.9102 - version update CGI 3.29 - version update Compress::Zlib 2.004 - version update Config::General 2.33 - version update Crypt::OpenSSL::RSA 0.25 - version update Crypt::OpenSSL::X509 0.5 - version update Crypt::SSLeay 0.56 - version update Cwd 3.25 - version update Bundle::DBD::mysql 4.005 - version update IO::Socket::SSL 1.07 - version update NetAddr::IP 4.007 - version update WSRF::Lite 0.8.2.2 - version update XML::LibXML 1.63 ASNMTAP CPAN module perl 5.8.0, 5.8.5 and 5.8.6 compatible - Making perl 5.8.8 compatible ASNMTAP::Asnmtap - NEW environment variable ASNMTAP_PATH used into the bash scripts - NEW making MySQL 5.0.x compatible - NEW asnmtap-3.000.015_mysql-v5.0.x.sql - NEW applications/tools/mysql/asnmtap-3.000.015-distributed_mysql-v5.0.x.sql - FIX OnDemand versus Display with 254 character limitation for MySQL >= v5.0.3 and yyyymmdd-test-ukey.sql-LOAD-DATA-FAILED Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 255 before MySQL 5.0.3, and 0 to 65,535 in 5.0.3 and later versions. TEXT A string with a maximum length of 65535 characters, from a variable length types that store large amounts of data. Is similar to a larger version of VARCHAR. These types can store a large piece of data information, but is also processed much slower. - OnDemand CRITICAL - WebService ... (Production): 500 read timeout - 200 OK - getVersion (...:9108): 4.20063.13 - 200 OK - ping (...:9110): OK - 200 OK - monitorControls (...:9110): OK - 200 OK - getVersion (...:9110): 4.20063.13 - ...: WARNING|'ping (...:8080)'=172ms;;;; 'monitorControls (...:8080)'=29682ms;;;; 'getVersion (...:8080)'=25ms;;;; 'ping (...:9108)'=25ms;;;; 'monitorControls (...:9108)'=30022ms;;;; 'getVersion (...:9108)'=24ms;;;; 'ping (...:9110)'=24ms;;;; 'monitorControls (...:9110)'=18898ms;;;; 'getVersion (...:9110)'=23ms;;;; Status=2;1;2;0;3 Compilation=1523ms;;;0; Trendline=79.039s;;;; Execution=80579ms;;;0; - Display: afkapping op 254 characters CRITICAL - WebService ... (Production): 500 read timeout - 200 OK - getVersion (...:9108): 4.20063.13 - 200 OK - ping (...:9110): OK - 200 OK - monitorControls (...:9110): OK - 200 OK - getVersion (...:9110): 4.20063.13 - ... - v4.x : `statusMessage` varchar(254) NOT NULL default '', - v5.0.x : `statusMessage` varchar(1024) NOT NULL default '', alter table events_yyyy_mm change statusMessage statusMessage varchar(1024); - IMPROVED perfparse_crontab.sh - NEW perfparse_crontab_failed.sh (Yves Van den Hove) - NEW perfparse_debug.sh by (Yves Van den Hove) ASNMTAP::Asnmtap::Applications - Applications.cnf ... # # LIB /opt/ChartDirector/lib/. # ... replace # # with # # add ... # # BIN /opt/asnmtap/perfparse/bin # ETC /opt/asnmtap/perfparse/etc # LIB /opt/asnmtap/perfparse/lib # SHARE /opt/asnmtap/perfparse/share # CGI /cgi-bin/perfparse.cgi # ENABLED 0 # '0' or '1' # DATABASE ~ # HOST ~ # PORT ~ # USERNAME ~ # PASSWORD ~ # ... replace # ... # REPORTS reports ... # with # ... # REPORTS reports # REPORTSPERFDATA reports_perfdata ... # - NEW $SERVERTABLREPORTSPRFDT into CGI.pm - NEW $CHARTDIRECTORLIB and $SERVERTABLREPORTSPRFDT into Applications.pm - NEW $PERFPARSEBIN $PERFPARSEETC $PERFPARSELIB $PERFPARSESHARE $PERFPARSECGI $PERFPARSEENABLED into CGI.pm & Applications.pm ASNMTAP::Asnmtap::Applications::Collector - NEW $CHARTDIRECTORLIB into collector.pl ASNMTAP::Asnmtap::Applications::CGI - NEW $CHARTDIRECTORLIB into generateChart.pl , generateCollectorCrontabSchedulingReport.pl, generateCollectorDaemonSchedulingReport.pl & generatePluginCrontabSchedulingReport.pl ASNMTAP::Asnmtap::Plugins - NEW check_template-SNMPTT.pl ASNMTAP::Asnmtap::Plugins::Nagios - NEW check_network_interface_traffic.pl display.pl - IMPROVED Status Message Error Displaying /bin/generateReports.pl - ADD show comments /sbin/purge_table.pl - FIX regarding: Can't create emailReport - FIX snmptt-3.000.015.sql: Cannot dbh->do: DELETE FROM `snmptt_unknown_archive` WHERE archivetime < "1161727200" /detailedStatisticsReportGenerationAndCompareResponsetimeTrends.pl - ADD show comments - ADD short description - FIX Use of uninitialized value in concatenation (.) or string at line 333 /moderator/collectorDaemonSchedulingReports.pl - FIX Use of uninitialized value in split at line 79. /moderator/plugins.pl - NEW Plugins (to edit short description, trendline, holiday bundle and uploading plugindoc) /moderator/trendlineCorrectionReports.pl - FIX Use of uninitialized value in split at line 93. - FIX Possible precedence problem on bitwise & operator at line 117. - FIX switch startdate with enddate /admin/reports.pl - ADD show comments - NEW Select 'Reports Perfdata' /admin/reports_perfdata.pl - NEW Reports Perfdata (to define the 'Performance Times' that are used by the automatically generated Reports) /sadmin/crontabs.pl - FIX 'select SQL_NO_CACHE count(id) from crontabs' with 'select SQL_NO_CACHE count(lineNumber) from crontabs' /sadmin/plugins.pl - ADD short desription - FIX $notActivated = ($Cactivated) ? '' : ' not'; with $notActivated = ($CTactivated) ? '' : ' not'; integration with jUnit - NEW /plugins/jUnit/ - NEW check_jUnit.pl - NEW create_ASNMTAP_jUnit_configuration_for_jUnit.pl integration with SNMPTT - NEW /plugins/snmptt/ - NEW check_SNMPTT_weblogic.pl - NEW create_ASNMTAP_weblogic_configuration_for_SNMP.pl - NEW create_weblogic_configuration_for_SNMPTT.pl - FIX snmptt_traps_remove_pending_and_duplicated.pl - NEW /plugins/templates/snmptt/ - UPDATE create_weblogic_configuration_database_with_SNMP-3.000.015.SQL - NEW create_weblogic_configuration_database_with_SNMP-3.000.015_mysql-v5.0.x.SQL - NEW snmptt-bea-weblogic.conf - NEW snmptt-3.000.015.sql - NEW snmptt.ini integration with NagTrap - NEW /applications/htmlroot/snmptraps table plugins - ADD `shortDesription` text, table reports - ADD `showComments` tinyint(1) NOT NULL default '0', - ADD `showPerfdata` tinyint(1) NOT NULL default '0', table reports_perfdata - NEW table reports_perfdata Version 3.000.014, 2007/06/10, Makefile.PL - version update CPAN 1.9101 - version update CPANPLUS 0.78 - version update Config::General 2.32 - version update DateTime 0.37 - version update Email::Simple 1.999 - version update ExtUtils::MakeMaker 6.32 - version update IO::Socket::SSL 1.040 - version update Net::LDAP 0.34 - version update Time::HiRes 1.9705 - version update WSRF::Lite 0.8.2.1 MANIFEST - NEW check_template-WebTransact-XML-Monitoring.pl - NEW check_template-WebTransact-XML-Monitoring.t - NEW check_template-WebTransact-with-client-authorization.pl - NEW check_template-WebTransact-with-client-authorization.t README - updated INSTALLATION procedure Applications.cnf # # # VERSION 4.x # '4.x' or '5.0.x' # MERGE 0 # '0' or '1' # ASNMTAP::Asnmtap::* - optimalisation for MySQL queries ASNMTAP::Asnmtap::Applications.pm & display.pl - FIX sound sanity .innerHTML bug with FireFox - UPDATE sound default set to 'off' when FireFox, otherwise default set to 'on' - UPDATE $TcommentData =~ s/[\n\r]+(Updated|Edited|Closed) by: (?:.+), (?:.+) \((?:.+)\) on (\d{4}-\d\d-\d\d) (\d\d:\d\d:\d\d)/\n\r$1 on $2 $3/g; ASNMTAP::Asnmtap::Applications::CGI.pm & archiver.pl - NEW $SERVERMYSQLVERSION = '4.x # '4.x' or '5.0.x' - NEW $SERVERMYSQLMERGE = '0' # '0' or '1' - UPDATE create_sql_query_events_from_range_year_month with MERGE when $SERVERMYSQLMERGE = 1 for much faster year and quarter statistics ASNMTAP::Asnmtap::Plugins - NEW create_NCPL_weblogic_configuration_for_SNMP.pl - NEW create_weblogic_configuration_database_with_SNMP.pl - NEW create_weblogic_configuration_database_with_SNMP.SQL ASNMTAP::Asnmtap::Plugins::Mail.pm - FIX regarding MIME-Encoding '7bit' and code optimalisation - NEW MIME-Encoding: '8bit', 'binhex', 'binary', 'x-gzip64', 'x-uu' & 'x-uuencode' - overview MIME-Encoding: '7bit', '8bit', 'quoted-printable', 'base64', 'binhex', 'binary', 'x-gzip64', 'x-uu' & 'x-uuencode' ASNMTAP::Asnmtap::Plugins::Nagios - NEW check_network_interface_status.pl - NEW snmptt_traps_remove_pending_and_duplicated.pl ASNMTAP::Asnmtap::SOAP.pm - NEW added basic authentication and credentials - NEW added soapaction and readable ASNMTAP::Asnmtap::Plugins::WebTransact.pm - NEW Inherited LWP user agent object: $objectWebTransact->ua = LWP::UserAgent->new; check_template-WebTransact-XML-Monitoring.pl & check_template-WebTransact-XML-Monitoring.t - NEW WebTransact plugin template for XML Monitoring check_template-WebTransact-with-client-authorization.pl & check_template-WebTransact-with-client-authorization.t - NEW WebTransact plugin template with client authorization detailedStatisticsReportGenerationAndCompareResponsetimeTrends.pl - add corresponding comments to the report generateReports.pl & getArchivedReport.pl - add support for timeperiod Version 3.000.013, 2007/02/25, ASNMTAP - add BEGIN { if ( $ENV{ASNMTAP_PERL5LIB} ) { eval 'use lib ( "$ENV{ASNMTAP_PERL5LIB}" )'; } } - FIX replace