mirror of
https://github.com/Icinga/icinga2.git
synced 2025-07-19 19:54:34 +02:00
Centralise default icinga.* and env.* macros
This commit is contained in:
parent
b2b49caf61
commit
f2974c07cf
@ -1,7 +1,6 @@
|
|||||||
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "db_ido/idochecktask.hpp"
|
#include "db_ido/idochecktask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/host.hpp"
|
#include "icinga/host.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
@ -61,8 +60,6 @@ void IdoCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckResult
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String idoType = MacroProcessor::ResolveMacros("$ido_type$", resolvers, checkable->GetLastCheckResult(),
|
String idoType = MacroProcessor::ResolveMacros("$ido_type$", resolvers, checkable->GetLastCheckResult(),
|
||||||
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#include "icinga/apiactions.hpp"
|
#include "icinga/apiactions.hpp"
|
||||||
#include "icinga/checkable.hpp"
|
#include "icinga/checkable.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/servicegroup.hpp"
|
#include "icinga/servicegroup.hpp"
|
||||||
#include "icinga/hostgroup.hpp"
|
#include "icinga/hostgroup.hpp"
|
||||||
@ -668,8 +667,6 @@ Dictionary::Ptr ApiActions::ExecuteCommand(const ConfigObject::Ptr& object, cons
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
|
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String resolved_endpoint = MacroProcessor::ResolveMacros(
|
String resolved_endpoint = MacroProcessor::ResolveMacros(
|
||||||
endpoint, resolvers, checkable->GetLastCheckResult(),
|
endpoint, resolvers, checkable->GetLastCheckResult(),
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/macroresolver.hpp"
|
#include "icinga/macroresolver.hpp"
|
||||||
#include "icinga/customvarobject.hpp"
|
#include "icinga/customvarobject.hpp"
|
||||||
|
#include "icinga/envresolver.hpp"
|
||||||
|
#include "icinga/icingaapplication.hpp"
|
||||||
#include "base/array.hpp"
|
#include "base/array.hpp"
|
||||||
#include "base/objectlock.hpp"
|
#include "base/objectlock.hpp"
|
||||||
#include "base/logger.hpp"
|
#include "base/logger.hpp"
|
||||||
@ -73,6 +75,16 @@ Value MacroProcessor::ResolveMacros(const Value& str, const ResolverList& resolv
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static const EnvResolver::Ptr l_EnvResolver = new EnvResolver();
|
||||||
|
|
||||||
|
static MacroProcessor::ResolverList GetDefaultResolvers()
|
||||||
|
{
|
||||||
|
return {
|
||||||
|
{ "icinga", IcingaApplication::GetInstance() },
|
||||||
|
{ "env", l_EnvResolver, false }
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
bool MacroProcessor::ResolveMacro(const String& macro, const ResolverList& resolvers,
|
bool MacroProcessor::ResolveMacro(const String& macro, const ResolverList& resolvers,
|
||||||
const CheckResult::Ptr& cr, Value *result, bool *recursive_macro)
|
const CheckResult::Ptr& cr, Value *result, bool *recursive_macro)
|
||||||
{
|
{
|
||||||
@ -88,7 +100,10 @@ bool MacroProcessor::ResolveMacro(const String& macro, const ResolverList& resol
|
|||||||
tokens.erase(tokens.begin());
|
tokens.erase(tokens.begin());
|
||||||
}
|
}
|
||||||
|
|
||||||
for (const ResolverSpec& resolver : resolvers) {
|
const auto defaultResolvers (GetDefaultResolvers());
|
||||||
|
|
||||||
|
for (auto resolverList : {&resolvers, &defaultResolvers}) {
|
||||||
|
for (auto& resolver : *resolverList) {
|
||||||
if (!objName.IsEmpty() && objName != resolver.Name)
|
if (!objName.IsEmpty() && objName != resolver.Name)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -164,6 +179,7 @@ bool MacroProcessor::ResolveMacro(const String& macro, const ResolverList& resol
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -173,10 +189,13 @@ Value MacroProcessor::EvaluateFunction(const Function::Ptr& func, const Resolver
|
|||||||
const Dictionary::Ptr& resolvedMacros, bool useResolvedMacros, int recursionLevel)
|
const Dictionary::Ptr& resolvedMacros, bool useResolvedMacros, int recursionLevel)
|
||||||
{
|
{
|
||||||
Dictionary::Ptr resolvers_this = new Dictionary();
|
Dictionary::Ptr resolvers_this = new Dictionary();
|
||||||
|
const auto defaultResolvers (GetDefaultResolvers());
|
||||||
|
|
||||||
for (const ResolverSpec& resolver : resolvers) {
|
for (auto resolverList : {&resolvers, &defaultResolvers}) {
|
||||||
|
for (auto& resolver: *resolverList) {
|
||||||
resolvers_this->Set(resolver.Name, resolver.Obj);
|
resolvers_this->Set(resolver.Name, resolver.Obj);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
auto internalResolveMacrosShim = [resolvers, cr, resolvedMacros, useResolvedMacros, recursionLevel](const std::vector<Value>& args) {
|
auto internalResolveMacrosShim = [resolvers, cr, resolvedMacros, useResolvedMacros, recursionLevel](const std::vector<Value>& args) {
|
||||||
if (args.size() < 1)
|
if (args.size() < 1)
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
/* Icinga 2 | (c) 2022 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2022 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "icingadb/icingadbchecktask.hpp"
|
#include "icingadb/icingadbchecktask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/host.hpp"
|
#include "icinga/host.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
@ -62,8 +61,6 @@ void IcingadbCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckR
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
auto resolve ([&](const String& macro) {
|
auto resolve ([&](const String& macro) {
|
||||||
return MacroProcessor::ResolveMacros(macro, resolvers, checkable->GetLastCheckResult(),
|
return MacroProcessor::ResolveMacros(macro, resolvers, checkable->GetLastCheckResult(),
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
#include "livestatus/hoststable.hpp"
|
#include "livestatus/hoststable.hpp"
|
||||||
#include "livestatus/hostgroupstable.hpp"
|
#include "livestatus/hostgroupstable.hpp"
|
||||||
#include "livestatus/endpointstable.hpp"
|
#include "livestatus/endpointstable.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/host.hpp"
|
#include "icinga/host.hpp"
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/hostgroup.hpp"
|
#include "icinga/hostgroup.hpp"
|
||||||
@ -11,7 +10,6 @@
|
|||||||
#include "icinga/eventcommand.hpp"
|
#include "icinga/eventcommand.hpp"
|
||||||
#include "icinga/timeperiod.hpp"
|
#include "icinga/timeperiod.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "icinga/compatutility.hpp"
|
#include "icinga/compatutility.hpp"
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "base/configtype.hpp"
|
#include "base/configtype.hpp"
|
||||||
@ -316,8 +314,6 @@ Value HostsTable::NotesExpandedAccessor(const Value& row)
|
|||||||
|
|
||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "host", host },
|
{ "host", host },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(host->GetNotes(), resolvers);
|
return MacroProcessor::ResolveMacros(host->GetNotes(), resolvers);
|
||||||
@ -342,8 +338,6 @@ Value HostsTable::NotesUrlExpandedAccessor(const Value& row)
|
|||||||
|
|
||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "host", host },
|
{ "host", host },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(host->GetNotesUrl(), resolvers);
|
return MacroProcessor::ResolveMacros(host->GetNotesUrl(), resolvers);
|
||||||
@ -368,8 +362,6 @@ Value HostsTable::ActionUrlExpandedAccessor(const Value& row)
|
|||||||
|
|
||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "host", host },
|
{ "host", host },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(host->GetActionUrl(), resolvers);
|
return MacroProcessor::ResolveMacros(host->GetActionUrl(), resolvers);
|
||||||
@ -426,8 +418,6 @@ Value HostsTable::IconImageExpandedAccessor(const Value& row)
|
|||||||
|
|
||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "host", host },
|
{ "host", host },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(host->GetIconImage(), resolvers);
|
return MacroProcessor::ResolveMacros(host->GetIconImage(), resolvers);
|
||||||
|
@ -9,11 +9,9 @@
|
|||||||
#include "icinga/servicegroup.hpp"
|
#include "icinga/servicegroup.hpp"
|
||||||
#include "icinga/hostgroup.hpp"
|
#include "icinga/hostgroup.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/eventcommand.hpp"
|
#include "icinga/eventcommand.hpp"
|
||||||
#include "icinga/timeperiod.hpp"
|
#include "icinga/timeperiod.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "icinga/compatutility.hpp"
|
#include "icinga/compatutility.hpp"
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "base/configtype.hpp"
|
#include "base/configtype.hpp"
|
||||||
@ -373,8 +371,6 @@ Value ServicesTable::NotesExpandedAccessor(const Value& row)
|
|||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "service", service },
|
{ "service", service },
|
||||||
{ "host", service->GetHost() },
|
{ "host", service->GetHost() },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(service->GetNotes(), resolvers);
|
return MacroProcessor::ResolveMacros(service->GetNotes(), resolvers);
|
||||||
@ -400,8 +396,6 @@ Value ServicesTable::NotesUrlExpandedAccessor(const Value& row)
|
|||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "service", service },
|
{ "service", service },
|
||||||
{ "host", service->GetHost() },
|
{ "host", service->GetHost() },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(service->GetNotesUrl(), resolvers);
|
return MacroProcessor::ResolveMacros(service->GetNotesUrl(), resolvers);
|
||||||
@ -427,8 +421,6 @@ Value ServicesTable::ActionUrlExpandedAccessor(const Value& row)
|
|||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "service", service },
|
{ "service", service },
|
||||||
{ "host", service->GetHost() },
|
{ "host", service->GetHost() },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(service->GetActionUrl(), resolvers);
|
return MacroProcessor::ResolveMacros(service->GetActionUrl(), resolvers);
|
||||||
@ -454,8 +446,6 @@ Value ServicesTable::IconImageExpandedAccessor(const Value& row)
|
|||||||
MacroProcessor::ResolverList resolvers {
|
MacroProcessor::ResolverList resolvers {
|
||||||
{ "service", service },
|
{ "service", service },
|
||||||
{ "host", service->GetHost() },
|
{ "host", service->GetHost() },
|
||||||
{ "icinga", IcingaApplication::GetInstance() },
|
|
||||||
{ "env", new EnvResolver(), false }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return MacroProcessor::ResolveMacros(service->GetIconImage(), resolvers);
|
return MacroProcessor::ResolveMacros(service->GetIconImage(), resolvers);
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#include "methods/clusterzonechecktask.hpp"
|
#include "methods/clusterzonechecktask.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "remote/apilistener.hpp"
|
#include "remote/apilistener.hpp"
|
||||||
#include "remote/endpoint.hpp"
|
#include "remote/endpoint.hpp"
|
||||||
@ -64,8 +63,6 @@ void ClusterZoneCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const Che
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", command);
|
resolvers.emplace_back("command", command);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String zoneName = MacroProcessor::ResolveMacros("$cluster_zone$", resolvers, checkable->GetLastCheckResult(),
|
String zoneName = MacroProcessor::ResolveMacros("$cluster_zone$", resolvers, checkable->GetLastCheckResult(),
|
||||||
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
||||||
|
@ -4,8 +4,6 @@
|
|||||||
# include <stdlib.h>
|
# include <stdlib.h>
|
||||||
#endif /* _WIN32 */
|
#endif /* _WIN32 */
|
||||||
#include "methods/dummychecktask.hpp"
|
#include "methods/dummychecktask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "base/utility.hpp"
|
#include "base/utility.hpp"
|
||||||
#include "base/perfdatavalue.hpp"
|
#include "base/perfdatavalue.hpp"
|
||||||
@ -38,8 +36,6 @@ void DummyCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckResu
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", command);
|
resolvers.emplace_back("command", command);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
int dummyState = MacroProcessor::ResolveMacros("$dummy_state$", resolvers, checkable->GetLastCheckResult(),
|
int dummyState = MacroProcessor::ResolveMacros("$dummy_state$", resolvers, checkable->GetLastCheckResult(),
|
||||||
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
||||||
|
@ -2,11 +2,9 @@
|
|||||||
|
|
||||||
#include "methods/icingachecktask.hpp"
|
#include "methods/icingachecktask.hpp"
|
||||||
#include "icinga/cib.hpp"
|
#include "icinga/cib.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "icinga/clusterevents.hpp"
|
#include "icinga/clusterevents.hpp"
|
||||||
#include "icinga/checkable.hpp"
|
#include "icinga/checkable.hpp"
|
||||||
#include "remote/apilistener.hpp"
|
#include "remote/apilistener.hpp"
|
||||||
@ -42,8 +40,6 @@ void IcingaCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckRes
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", command);
|
resolvers.emplace_back("command", command);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String missingIcingaMinVersion;
|
String missingIcingaMinVersion;
|
||||||
|
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "methods/pluginchecktask.hpp"
|
#include "methods/pluginchecktask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "base/configtype.hpp"
|
#include "base/configtype.hpp"
|
||||||
#include "base/logger.hpp"
|
#include "base/logger.hpp"
|
||||||
#include "base/function.hpp"
|
#include "base/function.hpp"
|
||||||
@ -38,8 +36,6 @@ void PluginCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckRes
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
int timeout = commandObj->GetTimeout();
|
int timeout = commandObj->GetTimeout();
|
||||||
|
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "methods/plugineventtask.hpp"
|
#include "methods/plugineventtask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/eventcommand.hpp"
|
#include "icinga/eventcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "base/configtype.hpp"
|
#include "base/configtype.hpp"
|
||||||
#include "base/logger.hpp"
|
#include "base/logger.hpp"
|
||||||
#include "base/function.hpp"
|
#include "base/function.hpp"
|
||||||
@ -37,8 +35,6 @@ void PluginEventTask::ScriptFunc(const Checkable::Ptr& checkable,
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
int timeout = commandObj->GetTimeout();
|
int timeout = commandObj->GetTimeout();
|
||||||
std::function<void(const Value& commandLine, const ProcessResult&)> callback;
|
std::function<void(const Value& commandLine, const ProcessResult&)> callback;
|
||||||
|
@ -1,13 +1,11 @@
|
|||||||
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "methods/pluginnotificationtask.hpp"
|
#include "methods/pluginnotificationtask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/notification.hpp"
|
#include "icinga/notification.hpp"
|
||||||
#include "icinga/notificationcommand.hpp"
|
#include "icinga/notificationcommand.hpp"
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "base/function.hpp"
|
#include "base/function.hpp"
|
||||||
#include "base/logger.hpp"
|
#include "base/logger.hpp"
|
||||||
#include "base/utility.hpp"
|
#include "base/utility.hpp"
|
||||||
@ -54,8 +52,6 @@ void PluginNotificationTask::ScriptFunc(const Notification::Ptr& notification,
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
int timeout = commandObj->GetTimeout();
|
int timeout = commandObj->GetTimeout();
|
||||||
std::function<void(const Value& commandLine, const ProcessResult&)> callback;
|
std::function<void(const Value& commandLine, const ProcessResult&)> callback;
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
||||||
|
|
||||||
#include "methods/sleepchecktask.hpp"
|
#include "methods/sleepchecktask.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/icingaapplication.hpp"
|
|
||||||
#include "icinga/pluginutility.hpp"
|
#include "icinga/pluginutility.hpp"
|
||||||
#include "base/utility.hpp"
|
#include "base/utility.hpp"
|
||||||
#include "base/convert.hpp"
|
#include "base/convert.hpp"
|
||||||
@ -34,8 +32,6 @@ void SleepCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckResu
|
|||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("command", commandObj);
|
resolvers.emplace_back("command", commandObj);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
double sleepTime = MacroProcessor::ResolveMacros("$sleep_time$", resolvers, checkable->GetLastCheckResult(),
|
double sleepTime = MacroProcessor::ResolveMacros("$sleep_time$", resolvers, checkable->GetLastCheckResult(),
|
||||||
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
nullptr, MacroProcessor::EscapeCallback(), resolvedMacros, useResolvedMacros);
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#include "perfdata/graphitewriter.hpp"
|
#include "perfdata/graphitewriter.hpp"
|
||||||
#include "perfdata/graphitewriter-ti.cpp"
|
#include "perfdata/graphitewriter-ti.cpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
@ -294,8 +293,6 @@ void GraphiteWriter::CheckResultHandlerInternal(const Checkable::Ptr& checkable,
|
|||||||
if (service)
|
if (service)
|
||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String prefix;
|
String prefix;
|
||||||
|
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
#include "perfdata/influxdbcommonwriter.hpp"
|
#include "perfdata/influxdbcommonwriter.hpp"
|
||||||
#include "perfdata/influxdbcommonwriter-ti.cpp"
|
#include "perfdata/influxdbcommonwriter-ti.cpp"
|
||||||
#include "remote/url.hpp"
|
#include "remote/url.hpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
#include "icinga/icingaapplication.hpp"
|
||||||
@ -225,8 +224,6 @@ void InfluxdbCommonWriter::CheckResultHandlerWQ(const Checkable::Ptr& checkable,
|
|||||||
if (service)
|
if (service)
|
||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
String prefix;
|
String prefix;
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#include "perfdata/opentsdbwriter.hpp"
|
#include "perfdata/opentsdbwriter.hpp"
|
||||||
#include "perfdata/opentsdbwriter-ti.cpp"
|
#include "perfdata/opentsdbwriter-ti.cpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/checkcommand.hpp"
|
#include "icinga/checkcommand.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
@ -196,8 +195,6 @@ void OpenTsdbWriter::CheckResultHandler(const Checkable::Ptr& checkable, const C
|
|||||||
if (service)
|
if (service)
|
||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
// Resolve macros for the service and host template config line
|
// Resolve macros for the service and host template config line
|
||||||
if (config_tmpl_tags) {
|
if (config_tmpl_tags) {
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
#include "perfdata/perfdatawriter.hpp"
|
#include "perfdata/perfdatawriter.hpp"
|
||||||
#include "perfdata/perfdatawriter-ti.cpp"
|
#include "perfdata/perfdatawriter-ti.cpp"
|
||||||
#include "icinga/envresolver.hpp"
|
|
||||||
#include "icinga/service.hpp"
|
#include "icinga/service.hpp"
|
||||||
#include "icinga/macroprocessor.hpp"
|
#include "icinga/macroprocessor.hpp"
|
||||||
#include "icinga/icingaapplication.hpp"
|
#include "icinga/icingaapplication.hpp"
|
||||||
@ -117,8 +116,6 @@ void PerfdataWriter::CheckResultHandler(const Checkable::Ptr& checkable, const C
|
|||||||
if (service)
|
if (service)
|
||||||
resolvers.emplace_back("service", service);
|
resolvers.emplace_back("service", service);
|
||||||
resolvers.emplace_back("host", host);
|
resolvers.emplace_back("host", host);
|
||||||
resolvers.emplace_back("icinga", IcingaApplication::GetInstance());
|
|
||||||
resolvers.emplace_back("env", new EnvResolver(), false);
|
|
||||||
|
|
||||||
if (service) {
|
if (service) {
|
||||||
String line = MacroProcessor::ResolveMacros(GetServiceFormatTemplate(), resolvers, cr, nullptr, &PerfdataWriter::EscapeMacroMetric);
|
String line = MacroProcessor::ResolveMacros(GetServiceFormatTemplate(), resolvers, cr, nullptr, &PerfdataWriter::EscapeMacroMetric);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user