mirror of https://github.com/Icinga/icinga2.git
DB IDO: Add 'is_reachable' column to {host,service}status tables.
Refs #6094
This commit is contained in:
parent
97d51c4269
commit
f5e568d3fb
|
@ -747,6 +747,7 @@ CREATE TABLE IF NOT EXISTS icinga_hoststatus (
|
||||||
normal_check_interval double default '0',
|
normal_check_interval double default '0',
|
||||||
retry_check_interval double default '0',
|
retry_check_interval double default '0',
|
||||||
check_timeperiod_object_id bigint unsigned default 0,
|
check_timeperiod_object_id bigint unsigned default 0,
|
||||||
|
is_reachable smallint default 0,
|
||||||
PRIMARY KEY (hoststatus_id),
|
PRIMARY KEY (hoststatus_id),
|
||||||
UNIQUE KEY object_id (host_object_id)
|
UNIQUE KEY object_id (host_object_id)
|
||||||
) ENGINE=InnoDB COMMENT='Current host status information';
|
) ENGINE=InnoDB COMMENT='Current host status information';
|
||||||
|
@ -1230,6 +1231,7 @@ CREATE TABLE IF NOT EXISTS icinga_servicestatus (
|
||||||
normal_check_interval double default '0',
|
normal_check_interval double default '0',
|
||||||
retry_check_interval double default '0',
|
retry_check_interval double default '0',
|
||||||
check_timeperiod_object_id bigint unsigned default 0,
|
check_timeperiod_object_id bigint unsigned default 0,
|
||||||
|
is_reachable smallint default 0,
|
||||||
PRIMARY KEY (servicestatus_id),
|
PRIMARY KEY (servicestatus_id),
|
||||||
UNIQUE KEY object_id (service_object_id)
|
UNIQUE KEY object_id (service_object_id)
|
||||||
) ENGINE=InnoDB COMMENT='Current service status information';
|
) ENGINE=InnoDB COMMENT='Current service status information';
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------
|
||||||
|
-- #6094
|
||||||
|
-- -----------------------------------------
|
||||||
|
|
||||||
|
ALTER TABLE icinga_hoststatus ADD COLUMN is_reachable smallint(6) DEFAULT NULL;
|
||||||
|
ALTER TABLE icinga_servicestatus ADD COLUMN is_reachable smallint(6) DEFAULT NULL;
|
|
@ -773,6 +773,7 @@ CREATE TABLE icinga_hoststatus (
|
||||||
normal_check_interval double precision default 0,
|
normal_check_interval double precision default 0,
|
||||||
retry_check_interval double precision default 0,
|
retry_check_interval double precision default 0,
|
||||||
check_timeperiod_object_id bigint default 0,
|
check_timeperiod_object_id bigint default 0,
|
||||||
|
is_reachable INTEGER default 0,
|
||||||
CONSTRAINT PK_hoststatus_id PRIMARY KEY (hoststatus_id) ,
|
CONSTRAINT PK_hoststatus_id PRIMARY KEY (hoststatus_id) ,
|
||||||
CONSTRAINT UQ_hoststatus UNIQUE (host_object_id)
|
CONSTRAINT UQ_hoststatus UNIQUE (host_object_id)
|
||||||
) ;
|
) ;
|
||||||
|
@ -1256,6 +1257,7 @@ CREATE TABLE icinga_servicestatus (
|
||||||
normal_check_interval double precision default 0,
|
normal_check_interval double precision default 0,
|
||||||
retry_check_interval double precision default 0,
|
retry_check_interval double precision default 0,
|
||||||
check_timeperiod_object_id bigint default 0,
|
check_timeperiod_object_id bigint default 0,
|
||||||
|
is_reachable INTEGER default 0,
|
||||||
CONSTRAINT PK_servicestatus_id PRIMARY KEY (servicestatus_id) ,
|
CONSTRAINT PK_servicestatus_id PRIMARY KEY (servicestatus_id) ,
|
||||||
CONSTRAINT UQ_servicestatus UNIQUE (service_object_id)
|
CONSTRAINT UQ_servicestatus UNIQUE (service_object_id)
|
||||||
) ;
|
) ;
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
-- -----------------------------------------
|
||||||
|
-- #6094
|
||||||
|
-- -----------------------------------------
|
||||||
|
|
||||||
|
ALTER TABLE icinga_hoststatus ADD COLUMN is_reachable INTEGER default 0;
|
||||||
|
ALTER TABLE icinga_servicestatus ADD COLUMN is_reachable INTEGER default 0;
|
|
@ -167,6 +167,7 @@ Dictionary::Ptr HostDbObject::GetStatusFields(void) const
|
||||||
fields->Set("normal_check_interval", CompatUtility::GetCheckableCheckInterval(host));
|
fields->Set("normal_check_interval", CompatUtility::GetCheckableCheckInterval(host));
|
||||||
fields->Set("retry_check_interval", CompatUtility::GetCheckableRetryInterval(host));
|
fields->Set("retry_check_interval", CompatUtility::GetCheckableRetryInterval(host));
|
||||||
fields->Set("check_timeperiod_object_id", host->GetCheckPeriod());
|
fields->Set("check_timeperiod_object_id", host->GetCheckPeriod());
|
||||||
|
fields->Set("is_reachable", CompatUtility::GetCheckableIsReachable(host));
|
||||||
|
|
||||||
return fields;
|
return fields;
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,6 +161,7 @@ Dictionary::Ptr ServiceDbObject::GetStatusFields(void) const
|
||||||
fields->Set("retry_check_interval", CompatUtility::GetCheckableRetryInterval(service));
|
fields->Set("retry_check_interval", CompatUtility::GetCheckableRetryInterval(service));
|
||||||
fields->Set("check_timeperiod_object_id", service->GetCheckPeriod());
|
fields->Set("check_timeperiod_object_id", service->GetCheckPeriod());
|
||||||
fields->Set("modified_service_attributes", service->GetModifiedAttributes());
|
fields->Set("modified_service_attributes", service->GetModifiedAttributes());
|
||||||
|
fields->Set("is_reachable", CompatUtility::GetCheckableIsReachable(service));
|
||||||
|
|
||||||
return fields;
|
return fields;
|
||||||
}
|
}
|
||||||
|
|
|
@ -216,6 +216,11 @@ int CompatUtility::GetCheckableIsFlapping(const Checkable::Ptr& checkable)
|
||||||
return (checkable->IsFlapping() ? 1 : 0);
|
return (checkable->IsFlapping() ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int CompatUtility::GetCheckableIsReachable(const Checkable::Ptr& checkable)
|
||||||
|
{
|
||||||
|
return (checkable->IsReachable() ? 1 : 0);
|
||||||
|
}
|
||||||
|
|
||||||
String CompatUtility::GetCheckablePercentStateChange(const Checkable::Ptr& checkable)
|
String CompatUtility::GetCheckablePercentStateChange(const Checkable::Ptr& checkable)
|
||||||
{
|
{
|
||||||
return Convert::ToString(checkable->GetFlappingCurrent());
|
return Convert::ToString(checkable->GetFlappingCurrent());
|
||||||
|
|
|
@ -59,6 +59,7 @@ public:
|
||||||
static int GetCheckableEventHandlerEnabled(const Checkable::Ptr& checkable);
|
static int GetCheckableEventHandlerEnabled(const Checkable::Ptr& checkable);
|
||||||
static int GetCheckableFlapDetectionEnabled(const Checkable::Ptr& checkable);
|
static int GetCheckableFlapDetectionEnabled(const Checkable::Ptr& checkable);
|
||||||
static int GetCheckableIsFlapping(const Checkable::Ptr& checkable);
|
static int GetCheckableIsFlapping(const Checkable::Ptr& checkable);
|
||||||
|
static int GetCheckableIsReachable(const Checkable::Ptr& checkable);
|
||||||
static String GetCheckablePercentStateChange(const Checkable::Ptr& checkable);
|
static String GetCheckablePercentStateChange(const Checkable::Ptr& checkable);
|
||||||
static int GetCheckableProcessPerformanceData(const Checkable::Ptr& checkable);
|
static int GetCheckableProcessPerformanceData(const Checkable::Ptr& checkable);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue