mirror of https://github.com/Icinga/icinga2.git
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 "*";
|
|
};
|
|
};
|
|
|
|
}
|