[comment]: # ({d5d0048d-d5d0048d})
# 3 Auslöser-Abhängigkeiten

[comment]: # ({/d5d0048d-d5d0048d})

[comment]: # ({4ad92f53-26bda053})
### Übersicht

Manchmal hängt die Verfügbarkeit eines Hosts von einem anderen ab.
Ein Server, der sich hinter einem Router befindet, wird nicht mehr erreichbar sein, wenn der Router ausfällt.
Wenn für beide Auslöser konfiguriert sind, erhalten Sie möglicherweise Benachrichtigungen über zwei ausgefallene Hosts - obwohl nur der Router die Ursache war.

Hier kann eine Abhängigkeit zwischen Hosts nützlich sein.
Wenn eine Abhängigkeit gesetzt ist, können Benachrichtigungen für die abhängigen Hosts zurückgehalten werden, und nur die Benachrichtigung über das eigentliche Problem wird gesendet.

Zabbix unterstützt Abhängigkeiten zwischen Hosts zwar nicht direkt, sie können jedoch mit einer anderen, flexibleren Methode definiert werden - Auslöser-Abhängigkeiten.
Ein Auslöser kann von einem oder mehreren anderen Auslösern abhängen.

In unserem einfachen Beispiel öffnen wir also das Konfigurationsformular des Server-Auslösers und legen fest, dass er vom entsprechenden Auslöser des Routers abhängt.
Mit einer solchen Abhängigkeit ändert der Server-Auslöser seinen Status nicht, solange der Auslöser, von dem er abhängt, sich im Status 'PROBLEM' befindet - und daher werden keine abhängigen Aktionen ausgeführt und keine Benachrichtigungen gesendet.

Wenn sowohl der Server als auch der Router ausgefallen sind und eine Abhängigkeit zwischen dem Auslöser "server down" und dem Auslöser "router down" gesetzt ist, führt Zabbix keine Aktionen für den abhängigen Auslöser aus.

Solange sich der übergeordnete Auslöser im Status PROBLEM befindet, können seine abhängigen Auslöser Werte melden, denen nicht zu trauen ist.
Daher werden abhängige Auslöser erst dann erneut ausgewertet, wenn der übergeordnete Auslöser (im obigen Beispiel der Router):

-   von 'PROBLEM' zurück in den Status 'OK' wechselt;
-   seinen Status von 'PROBLEM' auf 'UNKNOWN' ändert;
-   manuell, durch Korrelation oder mithilfe der Funktionen [date and time](/manual/appendix/functions/time) und/oder [nodata()](/manual/appendix/functions/history#nodata) geschlossen wird;
-   durch einen Wert eines Datenpunkts behoben wird, der nicht am abhängigen Auslöser beteiligt ist;
-   deaktiviert ist, einen deaktivierten Datenpunkt oder einen deaktivierten Datenpunkt-Host hat

In allen oben genannten Fällen wird der abhängige Auslöser (Server) erst dann erneut ausgewertet, wenn ein neuer Messwert für ihn empfangen wird.
Das bedeutet, dass der abhängige Auslöser möglicherweise nicht sofort aktualisiert wird.

Außerdem:

-   Eine Auslöser-Abhängigkeit kann von jedem Host-Auslöser zu jedem anderen Host-Auslöser hinzugefügt werden, solange dadurch keine zirkuläre Abhängigkeit entsteht.
-   Eine Auslöser-Abhängigkeit kann von einer Vorlage zu einer anderen hinzugefügt werden.
Wenn ein Auslöser aus Vorlage A von einem Auslöser aus Vorlage B abhängt, darf Vorlage A nur zusammen mit Vorlage B mit einem Host (oder einer anderen Vorlage) verknüpft werden, während Vorlage B auch allein mit einem Host (oder einer anderen Vorlage) verknüpft werden darf.
-   Eine Auslöser-Abhängigkeit kann von einem Vorlagen-Auslöser zu einem Host-Auslöser hinzugefügt werden.
In diesem Fall wird beim Verknüpfen einer solchen Vorlage mit einem Host ein Host-Auslöser erstellt, der von demselben Vorlagen-Auslöser abhängt, von dem auch der ursprüngliche Auslöser abhängig war.
Dies ermöglicht es beispielsweise, eine Vorlage zu haben, bei der einige Auslöser von den Router- (Host-) Auslösern abhängen.
Alle Hosts, die mit dieser Vorlage verknüpft sind, hängen dann von diesem bestimmten Router ab.
-   Eine Auslöser-Abhängigkeit kann nicht von einem Host-Auslöser zu einem Vorlagen-Auslöser hinzugefügt werden.
-   Eine Auslöser-Abhängigkeit kann von einem Auslöserprototyp zu einem anderen Auslöserprototyp (innerhalb derselben Low-Level-Discovery-Regel) oder zu einem realen Auslöser hinzugefügt werden.
Ein Auslöserprototyp kann nicht von einem Auslöserprototyp aus einer anderen LLD-Regel oder von einem aus einem Auslöserprototyp erstellten Auslöser abhängen.
Ein Host-Auslöserprototyp kann nicht von einem Auslöser aus einer Vorlage abhängen.

[comment]: # ({/4ad92f53-26bda053})

[comment]: # ({f09d14f7-c4578b73})
### Konfiguration

So definieren Sie eine Abhängigkeit:

1. Öffnen Sie die Registerkarte *Dependencies* im [Konfigurationsformular](/manual/config/triggers/trigger#configuration) des Auslösers.
2. Klicken Sie im Abschnitt *Dependencies* auf *Add* und wählen Sie einen oder mehrere Auslöser aus, von denen der Auslöser abhängig sein soll.

    ![](../../../../assets/en/manual/config/triggers/dependency.png){width="600"}

3. Klicken Sie auf *Update*.

Nun wird die Abhängigkeit des Auslösers in der Liste angezeigt.

![](../../../../assets/en/manual/config/triggers/dependency_list.png)

[comment]: # ({/f09d14f7-c4578b73})

[comment]: # ({6292d334-4dc2ce6b})
##### Beispiel für mehrere Abhängigkeiten

Zum Beispiel befindet sich der Host hinter dem Router2 und der Router2 hinter dem Router1.

```default
Zabbix - Router1 - Router2 - Host
```

Wenn der Router1 ausgefallen ist, dann sind natürlich auch der Host und der Router2 nicht erreichbar, aber drei Benachrichtigungen darüber zu erhalten, dass der Host, der Router1 und der Router2 ausgefallen sind, wäre übertrieben.

In diesem Fall definieren wir also zwei Abhängigkeiten:

```default
der Auslöser 'Host ist ausgefallen' hängt vom Auslöser 'Router2 ist ausgefallen' ab
der Auslöser 'Router2 ist ausgefallen' hängt vom Auslöser 'Router1 ist ausgefallen' ab
```

Bevor der Status des Auslösers 'Host ist ausgefallen' geändert wird, prüft Zabbix die entsprechenden Auslöser-Abhängigkeiten.
Wenn solche gefunden werden und einer dieser Auslöser sich im Zustand 'Problem' befindet, wird der Status des Auslösers nicht geändert, die Aktionen werden nicht ausgeführt und es werden keine Benachrichtigungen gesendet.

Zabbix führt diese Prüfung rekursiv durch.
Wenn der Router1 oder der Router2 nicht erreichbar ist, wird der Host-Auslöser nicht aktualisiert.

[comment]: # ({/6292d334-4dc2ce6b})
