Icinga 2 provides a number of special global variables:
-Variable |Description
--------------------|-------------------
-IcingaPrefixDir |**Read-only.** Contains the installation prefix that was specified with ./configure --prefix. Defaults to /usr/local
-IcingaLocalStateDir|**Read-only.** Contains the path of the local state directory. Defaults to IcingaPrefixDir + "/var".
-IcingaPkgLibDir |**Read-only.** Contains the path of the package lib directory. Defaults to IcingaPrefixDir + "/lib/icinga2".
-IcingaPkgDataDir |**Read-only.** Contains the path of the package data directory. Defaults to IcingaPrefixDir + "/share/icinga2".
-IcingaStatePath |**Read-write.** Contains the path of the Icinga 2 state file. Defaults to IcingaLocalStateDir + "/lib/icinga2/icinga2.state".
-IcingaPidPath |**Read-write.** Contains the path of the Icinga 2 PID file. Defaults to IcingaLocalStateDir + "/run/icinga2/icinga2.pid".
-IcingaMacros |**Read-write.** Contains a dictionary with global macros. Not set by default.
-ApplicationType |**Read-write.** Contains the name of the Application type. Defaults to "IcingaApplication".
+Variable |Description
+--------------------------|-------------------
+IcingaPrefixDir |**Read-only.** Contains the installation prefix that was specified with ./configure --prefix. Defaults to /usr/local
+IcingaLocalStateDir |**Read-only.** Contains the path of the local state directory. Defaults to IcingaPrefixDir + "/var".
+IcingaPkgLibDir |**Read-only.** Contains the path of the package lib directory. Defaults to IcingaPrefixDir + "/lib/icinga2".
+IcingaPkgDataDir |**Read-only.** Contains the path of the package data directory. Defaults to IcingaPrefixDir + "/share/icinga2".
+IcingaStatePath |**Read-write.** Contains the path of the Icinga 2 state file. Defaults to IcingaLocalStateDir + "/lib/icinga2/icinga2.state".
+IcingaPidPath |**Read-write.** Contains the path of the Icinga 2 PID file. Defaults to IcingaLocalStateDir + "/run/icinga2/icinga2.pid".
+IcingaMacros |**Read-write.** Contains a dictionary with global macros. Not set by default.
+ApplicationType |**Read-write.** Contains the name of the Application type. Defaults to "IcingaApplication".
+IcingaEnableNotifications |**Read-write.** Whether notifications are globally enabled. Defaults to true.
+IcingaEnableEventHandlers |**Read-write.** Whether event handlers are globally enabled. Defaults to true.
+IcingaEnableFlapping |**Read-write.** Whether flap detection is globally enabled. Defaults to true.
+IcingaEnableChecks |**Read-write.** Whether active checks are globally enabled. Defaults to true.
+IcingaEnablePerfdata |**Read-write.** Whether performance data processing is globally enabled. Defaults to true.
{
if (!m_OverrideEnableNotifications.IsEmpty())
return m_OverrideEnableNotifications;
- else if (!m_EnableNotifications.IsEmpty())
- return m_EnableNotifications;
else
- return true;
+ return ScriptVariable::Get("IcingaEnableNotifications");
}
void IcingaApplication::SetEnableNotifications(bool enabled)
{
if (!m_OverrideEnableEventHandlers.IsEmpty())
return m_OverrideEnableEventHandlers;
- else if (!m_EnableEventHandlers.IsEmpty())
- return m_EnableEventHandlers;
else
- return true;
+ return ScriptVariable::Get("IcingaEnableEventHandlers");
}
void IcingaApplication::SetEnableEventHandlers(bool enabled)
{
if (!m_OverrideEnableFlapping.IsEmpty())
return m_OverrideEnableFlapping;
- else if (!m_EnableFlapping.IsEmpty())
- return m_EnableFlapping;
else
- return true;
+ return ScriptVariable::Get("IcingaEnableFlapping");
}
void IcingaApplication::SetEnableFlapping(bool enabled)
{
if (!m_OverrideEnableChecks.IsEmpty())
return m_OverrideEnableChecks;
- else if (!m_EnableChecks.IsEmpty())
- return m_EnableChecks;
else
- return true;
+ return ScriptVariable::Get("IcingaEnableChecks");
}
void IcingaApplication::SetEnableChecks(bool enabled)
{
if (!m_OverrideEnablePerfdata.IsEmpty())
return m_OverrideEnablePerfdata;
- else if (!m_EnablePerfdata.IsEmpty())
- return m_EnablePerfdata;
else
- return true;
+ return ScriptVariable::Get("IcingaEnablePerfdata");
}
void IcingaApplication::SetEnablePerfdata(bool enabled)