mirror of
https://github.com/Icinga/icinga2.git
synced 2025-07-12 16:24:41 +02:00
Livestatus: Add servive_checks(_rate) columns to status table.
Refs #4655 Refs #2762
This commit is contained in:
parent
664f9b36ef
commit
7d28e95dba
@ -47,7 +47,7 @@ using namespace livestatus;
|
|||||||
static int l_ExternalCommands = 0;
|
static int l_ExternalCommands = 0;
|
||||||
static boost::mutex l_QueryMutex;
|
static boost::mutex l_QueryMutex;
|
||||||
|
|
||||||
Query::Query(const std::vector<String>& lines, const String& log_path)
|
Query::Query(const std::vector<String>& lines, const String& compat_log_path)
|
||||||
: m_KeepAlive(false), m_OutputFormat("csv"), m_ColumnHeaders(true), m_Limit(-1),
|
: m_KeepAlive(false), m_OutputFormat("csv"), m_ColumnHeaders(true), m_Limit(-1),
|
||||||
m_LogTimeFrom(0), m_LogTimeUntil(static_cast<long>(Utility::GetTime()))
|
m_LogTimeFrom(0), m_LogTimeUntil(static_cast<long>(Utility::GetTime()))
|
||||||
{
|
{
|
||||||
@ -64,7 +64,7 @@ Query::Query(const std::vector<String>& lines, const String& log_path)
|
|||||||
}
|
}
|
||||||
Log(LogDebug, "livestatus", msg);
|
Log(LogDebug, "livestatus", msg);
|
||||||
|
|
||||||
m_CompatLogPath = log_path;
|
m_CompatLogPath = compat_log_path;
|
||||||
|
|
||||||
/* default separators */
|
/* default separators */
|
||||||
m_Separators.push_back("\n");
|
m_Separators.push_back("\n");
|
||||||
|
@ -47,7 +47,7 @@ class Query : public Object
|
|||||||
public:
|
public:
|
||||||
DECLARE_PTR_TYPEDEFS(Query);
|
DECLARE_PTR_TYPEDEFS(Query);
|
||||||
|
|
||||||
Query(const std::vector<String>& lines, const String& log_path);
|
Query(const std::vector<String>& lines, const String& compat_log_path);
|
||||||
|
|
||||||
bool Execute(const Stream::Ptr& stream);
|
bool Execute(const Stream::Ptr& stream);
|
||||||
|
|
||||||
|
@ -47,8 +47,8 @@ void StatusTable::AddColumns(Table *table, const String& prefix,
|
|||||||
table->AddColumn(prefix + "connections", Column(&StatusTable::ConnectionsAccessor, objectAccessor));
|
table->AddColumn(prefix + "connections", Column(&StatusTable::ConnectionsAccessor, objectAccessor));
|
||||||
table->AddColumn(prefix + "connections_rate", Column(&StatusTable::ConnectionsRateAccessor, objectAccessor));
|
table->AddColumn(prefix + "connections_rate", Column(&StatusTable::ConnectionsRateAccessor, objectAccessor));
|
||||||
|
|
||||||
table->AddColumn(prefix + "service_checks", Column(&Table::ZeroAccessor, objectAccessor));
|
table->AddColumn(prefix + "service_checks", Column(&StatusTable::ServiceChecksAccessor, objectAccessor));
|
||||||
table->AddColumn(prefix + "service_checks_rate", Column(&Table::ZeroAccessor, objectAccessor));
|
table->AddColumn(prefix + "service_checks_rate", Column(&StatusTable::ServiceChecksRateAccessor, objectAccessor));
|
||||||
|
|
||||||
table->AddColumn(prefix + "host_checks", Column(&Table::ZeroAccessor, objectAccessor));
|
table->AddColumn(prefix + "host_checks", Column(&Table::ZeroAccessor, objectAccessor));
|
||||||
table->AddColumn(prefix + "host_checks_rate", Column(&Table::ZeroAccessor, objectAccessor));
|
table->AddColumn(prefix + "host_checks_rate", Column(&Table::ZeroAccessor, objectAccessor));
|
||||||
@ -122,6 +122,18 @@ Value StatusTable::ConnectionsRateAccessor(const Value& row)
|
|||||||
return (LivestatusListener::GetConnections() / (Utility::GetTime() - Application::GetStartTime()));
|
return (LivestatusListener::GetConnections() / (Utility::GetTime() - Application::GetStartTime()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Value StatusTable::ServiceChecksAccessor(const Value& row)
|
||||||
|
{
|
||||||
|
long timespan = static_cast<long>(Utility::GetTime() - Application::GetStartTime());
|
||||||
|
return CIB::GetActiveChecksStatistics(timespan);
|
||||||
|
}
|
||||||
|
|
||||||
|
Value StatusTable::ServiceChecksRateAccessor(const Value& row)
|
||||||
|
{
|
||||||
|
long timespan = static_cast<long>(Utility::GetTime() - Application::GetStartTime());
|
||||||
|
return (CIB::GetActiveChecksStatistics(timespan) / (Utility::GetTime() - Application::GetStartTime()));
|
||||||
|
}
|
||||||
|
|
||||||
Value StatusTable::ExternalCommandsAccessor(const Value& row)
|
Value StatusTable::ExternalCommandsAccessor(const Value& row)
|
||||||
{
|
{
|
||||||
return Query::GetExternalCommands();
|
return Query::GetExternalCommands();
|
||||||
|
@ -47,6 +47,8 @@ protected:
|
|||||||
|
|
||||||
static Value ConnectionsAccessor(const Value& row);
|
static Value ConnectionsAccessor(const Value& row);
|
||||||
static Value ConnectionsRateAccessor(const Value& row);
|
static Value ConnectionsRateAccessor(const Value& row);
|
||||||
|
static Value ServiceChecksAccessor(const Value& row);
|
||||||
|
static Value ServiceChecksRateAccessor(const Value& row);
|
||||||
static Value ExternalCommandsAccessor(const Value& row);
|
static Value ExternalCommandsAccessor(const Value& row);
|
||||||
static Value ExternalCommandsRateAccessor(const Value& row);
|
static Value ExternalCommandsRateAccessor(const Value& row);
|
||||||
static Value NagiosPidAccessor(const Value& row);
|
static Value NagiosPidAccessor(const Value& row);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user