mirror of
				https://github.com/Icinga/icinga2.git
				synced 2025-10-31 11:14:10 +01:00 
			
		
		
		
	- Decrease Object Authority updates to 10s (was 30s) - Decrease failover timeout to 30s (was 60s) - Decrease cold startup (after (re)start) with no OA updates to 30s (was 60s) - Immediately connect on Resume() - Fix query priority which got broken with #6970 - Add more logging when a failover is in progress ``` [2019-03-29 16:13:53 +0100] information/IdoMysqlConnection: Last update by endpoint 'master1' was 8.33246s ago (< failover timeout of 30s). Retrying. [2019-03-29 16:14:23 +0100] information/IdoMysqlConnection: Last update by endpoint 'master1' was 38.3288s ago. Taking over 'ido-mysql' in HA zone 'master'. ``` - Add more logging for reconnect and disconnect handling - Add 'last_failover' attribute to IDO*Connection objects refs #6970
		
			
				
	
	
		
			83 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
 | |
| 
 | |
| #include "db_ido/dbquery.hpp"
 | |
| #include "base/configobject.hpp"
 | |
| 
 | |
| library db_ido;
 | |
| 
 | |
| namespace icinga
 | |
| {
 | |
| 
 | |
| abstract class DbConnection : ConfigObject
 | |
| {
 | |
| 	[config] String table_prefix {
 | |
| 		default {{{ return "icinga_"; }}}
 | |
| 	};
 | |
| 
 | |
| 	[config, required] Dictionary::Ptr cleanup {
 | |
| 		default {{{ return new Dictionary(); }}}
 | |
| 	};
 | |
| 
 | |
| 	[config] Array::Ptr categories {
 | |
| 		default {{{
 | |
| 			return new Array({
 | |
| 				"DbCatConfig",
 | |
| 				"DbCatState",
 | |
| 				"DbCatAcknowledgement",
 | |
| 				"DbCatComment",
 | |
| 				"DbCatDowntime",
 | |
| 				"DbCatEventHandler",
 | |
| 				"DbCatFlapping",
 | |
| 				"DbCatNotification",
 | |
| 				"DbCatProgramStatus",
 | |
| 				"DbCatRetention",
 | |
| 				"DbCatStateHistory"
 | |
| 			});
 | |
| 		}}}
 | |
| 	};
 | |
| 	[no_user_view, no_user_modify] int categories_filter_real (CategoryFilter);
 | |
| 
 | |
| 	[config] bool enable_ha {
 | |
| 		default {{{ return true; }}}
 | |
| 	};
 | |
| 
 | |
| 	[config] double failover_timeout {
 | |
| 		default {{{ return 30; }}}
 | |
| 	};
 | |
| 
 | |
| 	[state, no_user_modify] double last_failover;
 | |
| 
 | |
| 	[no_user_modify] String schema_version;
 | |
| 	[no_user_modify] bool connected;
 | |
| 	[no_user_modify] bool should_connect {
 | |
| 		default {{{ return true; }}}
 | |
| 	};
 | |
| };
 | |
| 
 | |
| 
 | |
| validator DbConnection {
 | |
| 	Dictionary cleanup {
 | |
| 		Number acknowledgements_age;
 | |
| 		Number commenthistory_age;
 | |
| 		Number contactnotifications_age;
 | |
| 		Number contactnotificationmethods_age;
 | |
| 		Number downtimehistory_age;
 | |
| 		Number eventhandlers_age;
 | |
| 		Number externalcommands_age;
 | |
| 		Number flappinghistory_age;
 | |
| 		Number hostchecks_age;
 | |
| 		Number logentries_age;
 | |
| 		Number notifications_age;
 | |
| 		Number processevents_age;
 | |
| 		Number statehistory_age;
 | |
| 		Number servicechecks_age;
 | |
| 		Number systemcommands_age;
 | |
| 	};
 | |
| 
 | |
| 	Array categories {
 | |
| 		String "*";
 | |
| 	};
 | |
| };
 | |
| 
 | |
| }
 |