Doc: technical concepts: allow to change severity formula across Icinga 2 releases

so nobody is surprised in that case.
This commit is contained in:
Alexander Aleksandrovič Klimov 2022-01-31 12:05:52 +01:00 committed by GitHub
parent 185fab3761
commit ff686792dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 1 additions and 65 deletions

View File

@ -451,71 +451,7 @@ The severity value is pre-calculated for visualization interfaces
such as Icinga Web which sorts the problem dashboard by severity by default. such as Icinga Web which sorts the problem dashboard by severity by default.
The higher the severity number is, the more important the problem is. The higher the severity number is, the more important the problem is.
However, the formula can change across Icinga 2 releases.
Flags:
```cpp
/**
* Severity Flags
*
* @ingroup icinga
*/
enum SeverityFlag
{
SeverityFlagDowntime = 1,
SeverityFlagAcknowledgement = 2,
SeverityFlagHostDown = 4,
SeverityFlagUnhandled = 8,
SeverityFlagPending = 16,
SeverityFlagWarning = 32,
SeverityFlagUnknown = 64,
SeverityFlagCritical = 128,
};
```
Host:
```cpp
/* OK/Warning = Up, Critical/Unknown = Down */
if (!HasBeenChecked())
severity |= SeverityFlagPending;
else if (state == ServiceUnknown)
severity |= SeverityFlagCritical;
else if (state == ServiceCritical)
severity |= SeverityFlagCritical;
if (IsInDowntime())
severity |= SeverityFlagDowntime;
else if (IsAcknowledged())
severity |= SeverityFlagAcknowledgement;
else
severity |= SeverityFlagUnhandled;
```
Service:
```cpp
if (!HasBeenChecked())
severity |= SeverityFlagPending;
else if (state == ServiceWarning)
severity |= SeverityFlagWarning;
else if (state == ServiceUnknown)
severity |= SeverityFlagUnknown;
else if (state == ServiceCritical)
severity |= SeverityFlagCritical;
if (IsInDowntime())
severity |= SeverityFlagDowntime;
else if (IsAcknowledged())
severity |= SeverityFlagAcknowledgement;
else if (m_Host->GetProblem())
severity |= SeverityFlagHostDown;
else
severity |= SeverityFlagUnhandled;
```
## Cluster <a id="technical-concepts-cluster"></a> ## Cluster <a id="technical-concepts-cluster"></a>