6 Tagging
Übersicht
Tags bestehen aus einem Tag-Namen und einem Tag-Wert.
Beim Taggen von Entitäten können Sie nur den Namen verwenden oder ihn mit einem Wert kombinieren (zum Beispiel mysql, jira, target:mysql, service:jira usw.).
Tags können für verschiedene Entitäten definiert werden:
- Vorlagen
- Hosts
- Datenpunkte
- Webszenarien
- Auslöser
- Services
- Vorlagen-Datenpunkte und Auslöser
- Host-, Datenpunkt- und Auslöser-Prototypen
In den Listen Vorlagen, Hosts, Datenpunkte, Auslöser, Webszenarien und deren Prototypen zeigt die Spalte Tags sowohl reguläre als auch geerbte Tags an. Wenn Sie mit der Maus über ein geerbtes Tag fahren oder darauf klicken, erscheint ein JavaScript-Tooltip mit dem Text „Inherited tag“. Wenn ein geerbtes Tag auch als reguläres Tag vorhanden ist, wird je nach Liste, in der es erscheint, ein anderer Tooltip-Text angezeigt (zum Beispiel „Inherited and template tag“ in der Liste Vorlagen oder „Inherited and host tag“ in der Liste Hosts). An anderen Stellen im Frontend werden reguläre und geerbte Tags zusammen angezeigt (Duplikate werden entfernt), ohne Symbole und ohne zusätzlichen Tooltip-Text.
Beachten Sie die offiziellen Zabbix-Richtlinien mit allgemeinen Empfehlungen zur Definition von Tags sowie spezifischen Hinweisen für Vorlagen, Datenpunkte, Auslöser und Low-Level-Discovery-Regeln.
Tags haben mehrere Zwecke, insbesondere die Kennzeichnung von Ereignissen. Wenn Entitäten mit Tags versehen sind, erbt jedes neue Ereignis, das mit einer getaggten Entität zusammenhängt, deren Tags. Zum Beispiel:
- bei getaggten Vorlagen erbt jedes Host-Problem (erstellt durch Auslöser aus der Vorlage) die Tags der Vorlage.
- bei getaggten Hosts erbt jedes Host-Problem die Tags des Hosts.
- bei getaggten Datenpunkten/Webszenarien erbt jedes Datenpunkt-/Webszenario-Problem die Tags des Datenpunkts/Webszenarios.
- bei getaggten Auslösern erbt jedes durch den Auslöser erzeugte Problem die Tags des Auslösers.
Ein Problemereignis erbt alle Tags aus der gesamten Kette von Entitäten – Vorlagen, Hosts, Datenpunkte/Webszenarien, Auslöser.
Identische tag:value-Kombinationen (nach Auflösung von Makros) werden zu einer einzigen zusammengeführt, wodurch Duplikate vermieden werden.
Wiederherstellungsereignisse, die durch ein manuelles Schließen erzeugt werden, enthalten ebenfalls die aufgelösten Ereignis-Tags, die von Vorlagen, Hosts, Datenpunkten/Webszenarien und Auslösern geerbt wurden.
Diese Tags sind in Benachrichtigungen und über Makros wie {EVENT.RECOVERY.TAGS} und {EVENT.RECOVERY.TAGSJSON} verfügbar.
Benutzerdefinierte Ereignis-Tags bieten mehr Flexibilität. Zum Beispiel:
- die Ereigniskorrelation kann auf Basis von Ereignis-Tags konfiguriert werden.
- Aktionsbedingungen können auf Basis von Ereignis-Tags konfiguriert werden.
- Datenpunkt-Probleme können auf Basis von Ereignis-Tags gruppiert werden.
- Problem-Tags können verwendet werden, um Probleme Services zuzuordnen.
Entitäten können mit demselben Tag-Namen, aber unterschiedlichen Tag-Werten versehen werden (zum Beispiel component:memory und component:storage).
Ebenso kann eine Entität ein Tag ohne Wert und dasselbe Tag mit einem Wert haben (zum Beispiel database und database:postgresql).
Solche Tags gelten nicht als Duplikate.
Anwendungsfälle
Einige gängige Anwendungsfälle für das Tagging sind wie folgt:
-
Auslöser-Ereignisse kennzeichnen:
- Definieren Sie ein Auslöser-Tag (zum Beispiel
scope:performance). - Durch diesen Auslöser erzeugte Probleme erhalten das Auslöser-Tag.
- Definieren Sie ein Auslöser-Tag (zum Beispiel
-
Von Vorlagen geerbte Probleme kennzeichnen:
- Definieren Sie ein Vorlagen-Tag (zum Beispiel
target:mysql). - Durch Auslöser aus dieser Vorlage erzeugte Probleme erhalten das Vorlagen-Tag.
- Definieren Sie ein Vorlagen-Tag (zum Beispiel
-
Host-Probleme kennzeichnen:
- Definieren Sie ein Host-Tag (zum Beispiel
service:jira). - Durch Auslöser von diesem Host erzeugte Probleme erhalten das Host-Tag.
- Definieren Sie ein Host-Tag (zum Beispiel
-
Zugehörige Datenpunkte filtern:
- Definieren Sie ein Datenpunkt-Tag (zum Beispiel
component:cpu). - Unter Monitoring > Letzte Daten können Datenpunkte nach dem Tag
component:cpugefiltert werden.
- Definieren Sie ein Datenpunkt-Tag (zum Beispiel
-
Aus dem Datenpunktwert extrahierte Informationen als Tag-Wert verwenden:
- Definieren Sie ein Tag mit einem Makro als Tag-Wert (zum Beispiel
tag-name:{{ITEM.VALUE<N>}.regsub()}). - Unter Monitoring > Probleme wird bei Problemen der Tag-Wert in die aus dem Datenpunktwert extrahierten Daten aufgelöst.
- Definieren Sie ein Tag mit einem Makro als Tag-Wert (zum Beispiel
-
Probleme in einer Protokolldatei identifizieren und separat schließen:
- Definieren Sie ein Auslöser-Tag für den Auslöser des Log-Monitoring-Datenpunkts, das Werte mithilfe eines Makros aus dem Datenpunktwert extrahiert (zum Beispiel
service:{{ITEM.VALUE<N>}.regsub()}). - Richten Sie in der Auslöser-Konfiguration die Ereigniskorrelation ein:
- setzen Sie Modus für die Generierung von PROBLEM-Ereignissen auf „Mehrere“;
- setzen Sie OK-Ereignis schließt auf „Alle Probleme, wenn Tag-Werte übereinstimmen“;
- legen Sie das Tag für den Abgleich fest.
- Durch den Auslöser des Log-Datenpunkts erzeugte Probleme erhalten das Auslöser-Tag und werden einzeln geschlossen.
- Definieren Sie ein Auslöser-Tag für den Auslöser des Log-Monitoring-Datenpunkts, das Werte mithilfe eines Makros aus dem Datenpunktwert extrahiert (zum Beispiel
-
Benachrichtigungen filtern:
- Definieren Sie Auslöser-Tags (zum Beispiel
scope:securityfür Auslöser1 undscope:availabilityfür Auslöser2). - Verwenden Sie die Tag-Filterung in Aktionsbedingungen, um Benachrichtigungen nur für Ereignisse zu erhalten, die den Tag-Daten entsprechen.
- Definieren Sie Auslöser-Tags (zum Beispiel
-
Probleme in Benachrichtigungen identifizieren:
- Definieren Sie Auslöser-Tags.
- Verwenden Sie das Makro {EVENT.TAGS} in der Problembenachrichtigung.
- Die Problembenachrichtigung enthält die Auslöser-Tags, wodurch sich leichter erkennen lässt, zu welcher Anwendung/welchem Dienst die Benachrichtigung gehört.
-
Konfigurationsaufgaben durch die Verwendung von Vorlagen-Tags vereinfachen:
- Definieren Sie ein Vorlagen-Auslöser-Tag.
- Auslöser, die aus diesem Vorlagen-Auslöser erstellt werden, erhalten dessen Tag.
-
Auslöser mit Tags aus der Low-Level-Discovery (LLD) erstellen:
- Definieren Sie ein Tag für einen Auslöser-Prototyp mit einem LLD-Makro im Tag-Namen oder -Wert (zum Beispiel
scope:{#FSNAME}). - Auslöser, die aus dem Auslöser-Prototyp erstellt werden, erhalten dessen Tag.
- Definieren Sie ein Tag für einen Auslöser-Prototyp mit einem LLD-Makro im Tag-Namen oder -Wert (zum Beispiel
-
Services mithilfe von Service-Tags abgleichen:
- Definieren Sie Service-Tags.
- Konfigurieren Sie Service-Aktionen für Services mit übereinstimmenden Tags.
- Verwenden Sie Service-Tags außerdem, um einen Service mit einem SLA für SLA-Berechnungen zu verknüpfen.
-
Services über Service-Problem-Tags mit Problemen verknüpfen:
- Definieren Sie ein Problem-Tag in der Service-Konfiguration (zum Beispiel
target:mysql). - Probleme mit einem übereinstimmenden Tag werden automatisch mit dem Service korreliert, und der Service-Status ändert sich entsprechend den konfigurierten Regeln zur Berechnung des Service-Status.
- Definieren Sie ein Problem-Tag in der Service-Konfiguration (zum Beispiel
-
Probleme unterdrücken, wenn sich ein Host im Wartungsmodus befindet:
- Definieren Sie Tags in der Konfiguration des Wartungszeitraums.
- Probleme mit den definierten Tags werden unterdrückt.
-
Zugriff für Benutzergruppen gewähren:
- Definieren Sie Tags in der Benutzergruppen-Konfiguration.
- Benutzer in der Benutzergruppe können nur Probleme mit den definierten Tags anzeigen.
Konfiguration
Tags können in einem eigenen Reiter definiert werden, zum Beispiel in der Auslöser-Konfiguration:

Unterstützung von Makros
Integrierte und Benutzermakros in Tags werden zum Zeitpunkt des Ereignisses aufgelöst. Bis das Ereignis eingetreten ist, werden diese Makros im Zabbix Frontend nicht aufgelöst angezeigt.
Low-level discovery-Makros werden während des Discovery-Prozesses aufgelöst.
Die folgenden Makros können in Namen und Werten von Auslöser-Tags verwendet werden:
- integrierte Makros {ITEM.VALUE}, {ITEM.VALUE.AGE}, {ITEM.VALUE.DATE}, {ITEM.VALUE.TIME}, {ITEM.VALUE.TIMESTAMP}, {ITEM.LASTVALUE}, {ITEM.LASTVALUE.AGE}, {ITEM.LASTVALUE.DATE}, {ITEM.LASTVALUE.TIME}, {ITEM.LASTVALUE.TIMESTAMP}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} und {HOST.ID}
- integrierte Makros {INVENTORY.*} (zum Referenzieren von Host-Inventarwerten von einem oder mehreren Hosts in einem Auslöser-Ausdruck)
- Benutzermakros und Benutzermakros mit Kontext (der Kontext kann Low-level discovery-Makros enthalten)
- Low-level discovery-Makros (nur in Tags von Auslöser-Prototypen)
Die folgenden Makros können in Namen und Werten von Tags von Vorlagen, Hosts und Datenpunkten/Webszenarien verwendet werden:
- integrierte Makros {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} und {HOST.ID}
- integrierte Makros {INVENTORY.*}
- Benutzermakros
- Low-level discovery-Makros (nur in Tags von Host- und Datenpunkt-Prototypen)
Die folgenden Makros können in Auslöser-basierten Benachrichtigungen verwendet werden:
- integrierte Makros {EVENT.TAGS} und {EVENT.RECOVERY.TAGS} (diese Makros werden zu einer durch Kommas getrennten Liste von Ereignis-Tags bzw. Tags von Wiederherstellungsereignissen aufgelöst)
- integrierte Makros {EVENT.TAGSJSON} und {EVENT.RECOVERY.TAGSJSON} (diese Makros werden zu einem JSON-Array aufgelöst, das Ereignis-Tag-Objekte oder Objekte von Wiederherstellungsereignis-Tags enthält)
Teilzeichenfolgenextraktion in Auslöser-Tags
Die Teilzeichenfolgenextraktion wird zum Befüllen des Tag-Namens oder Tag-Werts mithilfe einer Makro-Funktion unterstützt. Die Funktion wendet einen regulären Ausdruck auf den Wert an, der durch das unterstützte Makro erhalten wird. Zum Beispiel:
{{ITEM.VALUE}.regsub(pattern, output)}
{{ITEM.VALUE}.iregsub(pattern, output)}
{{#LLDMACRO}.regsub(pattern, output)}
{{#LLDMACRO}.iregsub(pattern, output)}
Wenn der Tag-Name oder -Wert nach der Makroauflösung 255 Zeichen überschreitet, wird er auf 255 Zeichen gekürzt.
Siehe auch: Verwendung von Makrofunktionen in Low-Level-Discovery-Makros für Event-Tagging.
Anzeigen von Ereignis-Tags
Tags können, sofern definiert, bei neuen Ereignissen angezeigt werden in:
- Monitoring > Probleme
- Monitoring > Probleme > Ereignisdetails
- Dashboards > Probleme-Widget
Die Reihenfolge und Anzahl der angezeigten Tags wird durch die Filteroptionen Tag-Anzeigepriorität und Tags anzeigen in Monitoring > Probleme oder im Dashboard-Widget Probleme bestimmt. Beachten Sie, dass maximal drei Tags angezeigt werden können; wenn mehr Tags vorhanden sind, werden beim Überfahren der drei Punkte alle Tags in einem Pop-up-Fenster angezeigt.
