1 Auslöser-Beispiele

Diese Seite ist eine Sammlung von Auslöser-Beispielen.

Die Beispiele sind nach Anwendungsfall sortiert:

Nicht verfügbaren Host erkennen
max(/host/zabbix[host,agent,available],5m)=0

Dieser Auslöser wird ausgelöst, wenn der Zabbix Agent auf dem Host 5 Minuten lang nicht verfügbar war.
Funktion: max
Datenpunkt: zabbix[host,agent,available]

Alternative:

nodata(/host/agent.ping,5m)=1

Dieser Auslöser wird ausgelöst, wenn 5 Minuten lang keine Daten vom Zabbix Agent empfangen wurden.
Funktion: nodata
Datenpunkt: agent.ping

Nicht verfügbaren Proxy erkennen
fuzzytime(/host/zabbix[proxy,{$PROXY_NAME},lastaccess],1m)=0

Dieser Auslöser wird ausgelöst, wenn die Daten des Zabbix Proxy der Zeit des Zabbix Server um 1 Minute hinterherhinken.
Funktion: fuzzytime
Datenpunkt: zabbix[proxy,{$PROXY_NAME},lastaccess]

Nicht verfügbaren SMTP-Cluster erkennen
last(/smtp1.example.com/net.tcp.service[smtp])=0 and last(/smtp2.example.com/net.tcp.service[smtp])=0

Dieser Auslöser wird ausgelöst, wenn beide SMTP-Server nicht verfügbar sind.
Funktion: last
Datenpunkt: net.tcp.service

Nicht erreichbaren Host erkennen
count(/host/icmpping,30m,,"0")>5

Dieser Auslöser wird ausgelöst, wenn der Host in den letzten 30 Minuten mehr als 5-mal per Ping nicht erreichbar ist.
Funktion: count
Datenpunkt: icmpping

Unerwarteten Neustart erkennen
change(/host/system.uptime)<0

Dieser Auslöser wird ausgelöst, wenn eine negative Änderung des System-Uptime-Werts festgestellt wird (was auf einen Neustart hinweist).
Funktion: change
Datenpunkt: system.uptime

Änderungen in wichtigen Dateien erkennen
last(/host/vfs.file.cksum[/etc/passwd],#1)<>last(/host/vfs.file.cksum[/etc/passwd],#2)

Dieser Auslöser wird ausgelöst, wenn /etc/passwd geändert wurde. Der Ausdruck ist wahr, wenn sich die vorherige Prüfsumme von /etc/passwd von der aktuellsten unterscheidet. Ähnliche Ausdrücke können nützlich sein, um Änderungen in wichtigen Dateien wie /etc/passwd, /etc/inetd.conf, /kernel usw. zu überwachen.
Funktion: last
Datenpunkt: vfs.file.cksum

Änderungen in der DNS-Abfrage erkennen
last(/Zabbix server/net.dns.record[192.0.2.0,{$WEBSITE_NAME},{$DNS_RESOURCE_RECORD_TYPE},2,1])<>"{$WEBSITE_NAME}           {$DNS_RESOURCE_RECORD_TYPE}       0 mail.{$WEBSITE_NAME}"

Beachten Sie die Anführungszeichen um den zweiten Operanden.

Dieser Auslöser wird ausgelöst, wenn das Abfrageergebnis nicht dem entspricht, was normalerweise zurückgegeben wird:

example.com           MX       0 mail.example.com

Funktion: last
Datenpunkt: net.dns.record[192.0.2.0,{$WEBSITE_NAME},{$DNS_RESOURCE_RECORD_TYPE},2,1], mit wie folgt definierten Makros:

{$WEBSITE_NAME} = example.com
{$DNS_RESOURCE_RECORD_TYPE} = MX
Nicht übereinstimmende Software auf verschiedenen Hosts erkennen
last(/host/vfs.file.contents[/etc/os-release])<>last(/host2/vfs.file.contents[/etc/os-release])

Dieser Auslöser wird ausgelöst, wenn sich die Ubuntu-Version auf verschiedenen Hosts unterscheidet. Beachten Sie, dass die Operanden hier Funktionen sind, die Zeichenfolgen zurückgeben.
Funktion: last
Datenpunkt: vfs.file.contents

Nicht synchronisierte Uhren erkennen
fuzzytime(/host/system.localtime,10s)=0

Der Auslöser wird ausgelöst, wenn sich die lokale Zeit des Clients und die Zeit des Zabbix-Servers um mehr als 10 Sekunden unterscheiden.
Funktion: fuzzytime
Datenpunkt: system.localtime

Beachten Sie, dass system.localtime für den Zabbix-Agenten als passiver Check konfiguriert werden muss; bei Zabbix-Agent 2 kann er als aktiver Check konfiguriert werden.

Veralteten Agent erkennen
find(/host/agent.version,,"like","beta")=1

Dieser Auslöser wird ausgelöst, wenn der Zabbix Agent eine Beta-Version hat. Der Zabbix Agent muss aktualisiert werden.
Funktion: find
Datenpunkt: agent.version

Flappende Schnittstelle erkennen
changecount(/host/vfs.file.contents["/sys/class/net/eth0/operstate"],1h)>5 

Dieser Auslöser wird ausgelöst, wenn sich der Betriebszustand (up/down/unknown) von eth0 innerhalb einer Stunde mehr als 5-mal geändert hat.
Funktion: changecount
Datenpunkt: vfs.file.contents

Hohen eingehenden Datenverkehr erkennen
min(/host/net.if.in[eth0,bytes],5m)>100K

Dieser Auslöser wird ausgelöst, wenn die Anzahl der auf eth0 empfangenen Bytes in den letzten fünf Minuten immer über 100 Kilobyte lag. Wahrscheinlich lädt jemand eine große Datei herunter.
Funktion: min
Datenpunkt: net.if.in[eth0,bytes]

Geringen Festplattenspeicher erkennen
max(/host/vfs.fs.size[/,free],5m)<10G

Der Auslöser wird ausgelöst, wenn der freie Festplattenspeicher durchgehend (5 Minuten lang) unter 10 GB liegt.

Sie können auch einen Wiederherstellungsausdruck definieren:

min(/host/vfs.fs.size[/,free],10m)>40G

Das Problem wird erst dann gelöst, wenn der freie Festplattenspeicher durchgehend (10 Minuten lang) über 40 GB liegt.
Funktion: min
Datenpunkt: vfs.fs.size

Geringen Festplattenspeicher erkennen (dynamischer Schwellenwert)
last(/template/hrStorageFree[{#SNMPVALUE}])<last(/template/hrStorageSize[{#SNMPVALUE}])*0.1

Der Auslöser wird ausgelöst, wenn der freie Speicherplatz (in Zuordnungseinheiten) unter 10 Prozent fällt. Beachten Sie, dass der Wert eines anderen Datenpunkts verwendet wird, um einen adaptiven Auslöser-Schwellenwert zu erhalten, der auf erkannten Speicher unterschiedlicher Größe anwendbar ist. Funktion: last

Hohe CPU-Last erkennen
last(/host/system.cpu.load[all,avg1])>5

Der Auslöser wird ausgelöst, wenn die durchschnittliche Prozessorlast eine Minute lang über 5 liegt.

Varianten:

min(/host/system.cpu.load[all,avg1],5m)>2 and time()<060000
min(/host/system.cpu.load[all,avg1],5m)>2 and not (dayofweek()=7 and time()>230000) and not (dayofweek()=1 and time()<010000)

Solche Auslöser analysieren 5 Minuten an Daten und werden nur ausgelöst, wenn die CPU-Last nie unter 2 liegt. Zusätzlich werden diese Auslöser ausgelöst:

  • nur nachts (00:00-06:00)
  • jederzeit außer für 2 Stunden beim Wochenwechsel (Sonntag, 23:00 - Montag, 01:00)
(last(/host/system.cpu.load[all,avg1])>5) + (last(/host2/system.cpu.load[all,avg1])>5) + (last(/host3/system.cpu.load[all,avg1])>5)>=2

Dieser Auslöser wird ausgelöst, wenn die Prozessorlast auf mindestens zwei der drei Hosts zu hoch ist.
Funktionen: last, min, dayofweek, time
Datenpunkt: system.cpu.load

CPU-Lasten vergleichen
avg(/Zabbix server/system.cpu.load,1h)/avg(/Zabbix server/system.cpu.load,1h:now-1d)>2

Der Auslöser wird ausgelöst, wenn die durchschnittliche Last heute die durchschnittliche Last derselben Stunde gestern (unter Verwendung der Zeitverschiebung now-1d) um mehr als das Zweifache übersteigt.
Funktion: avg
Datenpunkt: system.cpu.load

Langfristige CPU-Lasten vergleichen
trendavg(/host/system.cpu.load,1M:now/M)>1.1*trendavg(/host/system.cpu.load,1M:now/M-1M)

Dieser Auslöser wird ausgelöst, wenn die CPU-Last auf dem Host im letzten Monat um mehr als 10 % gestiegen ist
Funktion: trendavg
Datenpunkt: system.cpu.load

Sie können auch das Feld Event name in der Auslöser-Konfiguration verwenden, um eine aussagekräftige Warnmeldung zu erstellen, zum Beispiel um etwas wie

"Load of Exchange server increased by 24% in July (0.69) comparing to June (0.56)"

zu erhalten.

Der Ereignisname muss wie folgt definiert werden:

Load of {HOST.HOST} server increased by {{?100*trendavg(//system.cpu.load,1M:now/M)/trendavg(//system.cpu.load,1M:now/M-1M)}.fmtnum(0)}% in {{TIME}.fmttime(%B,-1M)} ({{?trendavg(//system.cpu.load,1M:now/M)}.fmtnum(2)}) comparing to {{TIME}.fmttime(%B,-2M)} ({{?trendavg(//system.cpu.load,1M:now/M-1M)}.fmtnum(2)})

Es ist für diese Art von Problem auch sinnvoll, in der Auslöser-Konfiguration das manuelle Schließen zu erlauben.

Zeichenfolge mit Sonderzeichen erkennen
last(/host/vfs.file.contents[/tmp/hello])={$HELLO_MACRO}

Der Auslöser wird ausgelöst, wenn der Inhalt von /tmp/hello gleich der in {$HELLO_MACRO} definierten Zeichenfolge ist:

{$HELLO_MACRO} = \" //hello ?\"

Alternativ können Sie direkt mit der Zeichenfolge vergleichen:

last(/Zabbix server/vfs.file.contents[/tmp/hello])="\\\" //hello ?\\\""

Beachten Sie, dass die Sonderzeichen (\\ und ") maskiert werden, wenn die Zeichenfolge direkt verglichen wird.

Funktion: last
Datenpunkt: vfs.file.contents

Haben Sie ein Beispiel für einen Auslöserausdruck, das andere nützlich finden könnten?
Senden Sie Ihr Beispiel (einschließlich Ausdruck und Kontext) über unser Vorschlagsformular, um es an die Zabbix-Entwickler zu übermitteln.