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

Auslöser-Abhängigkeiten können verwendet werden, um Warnmeldungen zu vermeiden, die nicht mit der Grundursache zusammenhängen.

Siehe alle [Best Practices](/manual/config/triggers/best_practices).

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

[comment]: # ({520fe3ce-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 darüber, dass zwei Hosts ausgefallen sind - 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 es wird nur die Benachrichtigung zum eigentlichen Problem gesendet.

Obwohl Zabbix Abhängigkeiten zwischen Hosts nicht direkt unterstützt, können sie mit einer anderen, flexibleren Methode definiert werden - Auslöserabhä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 Zustand nicht, solange der Auslöser, von dem er abhängt, sich im Zustand '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 Zustand 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' wieder in den Zustand 'OK' zurückkehrt;
-   seinen Zustand von 'PROBLEM' in 'UNKNOWN' ändert;
-   manuell, durch Korrelation oder mithilfe der Funktionen [date and time](/manual/config/triggers/expression/time) und/oder [nodata()](/manual/config/triggers/expression/history#nodata) geschlossen wird;
-   durch einen Wert eines Datenpunkts aufgelöst 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öserabhängigkeit kann von einem beliebigen Host-Auslöser zu einem anderen beliebigen Host-Auslöser hinzugefügt werden, solange dadurch keine zirkuläre Abhängigkeit entsteht.
-   Eine Auslöserabhä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, kann 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 kann.
-   Eine Auslöserabhä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 Auslöser der Vorlage abhängt, von dem auch der 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öserabhängigkeit kann nicht von einem Host-Auslöser zu einem Vorlagen-Auslöser hinzugefügt werden.
-   Eine Auslöserabhä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]: # ({/520fe3ce-26bda053})

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

Um eine Abhängigkeit zu definieren:

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]: # ({/3efffbf7-c4578b73})

[comment]: # ({4cbfb1d1-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, doch drei Benachrichtigungen darüber zu erhalten, dass der Host, der Router1 und der Router2 ausgefallen sind, ist übertrieben.

In diesem Fall definieren wir also zwei Abhängigkeiten:

```default
the 'Host is down' trigger depends on the 'Router2 is down' trigger
the 'Router2 is down' trigger depends on the 'Router1 is down' trigger
```

Bevor der Status des Auslösers 'Host is down' geändert wird, prüft Zabbix die entsprechenden Auslöserabhängigkeiten.
Wenn solche gefunden werden und einer dieser Auslöser sich im Zustand **`Problem`** befindet, wird der Auslöserstatus 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]: # ({/4cbfb1d1-4dc2ce6b})
