Aktionen

Zabbix Trigger nur zu bestimmten Zeiten - Zeit gesteuerte Trigger

Aus znilwiki

1 Uhrzeit .time()

Einen Trigger nur zu bestimmten Zeiten auslösen zu lassen ist prinzipiell ganz einfach.
Bei jedem Item kann man statt z.B. .last() auch immer .time() verwenden.

Beispiel:
Dieser Trigger löst auf dem Host DC.znil.local aus wenn der freie Speicherplatz auf Laufwerk D: unter 10GB rutscht:

{DC.znil.local:vfs.fs.size[D:,free].last()}<10G

Jetzt soll der Alarm aber nur zwischen 08:00 Uhr morgens und 18:00 Uhr abends auslösen:

{DC.znil.local:vfs.fs.size[D:,free].last()}<10G and
{DC.znil.local:vfs.fs.size[D:,free].time()}>080000 and
{DC.znil.local:vfs.fs.size[D:,free].time()}<180000

Die gewünschte Uhrzeit kann also einfach in der Schreibweise

HHMMSS

angegeben werden - und man nutzt einen einfachen > oder < Vergleich.


2 Datum .date()

Genau wie .time<code> funtioniert <code>.date():

{DC.znil.local:vfs.fs.size[D:,free].date()}>20171224

würde nur ab dem 25.12.2017 auslösen.
Die Schreibweise ist in diesem Fall

YYYYMMDD bzw. JJJJMMTT



3 Tag des Monats .dayofmonth()

{DC.znil.local:vfs.fs.size[D:,free].dayofmonth()}=21

Würde nur am 21. eines Monats auslösen.


4 Wochentag .dayofweek()

{DC.znil.local:vfs.fs.size[D:,free].dayofweek()}=3

würde immer nur Mittwochs auslösen,

{DC.znil.local:vfs.fs.size[D:,free].dayofweek()}<6

würde Montags bis Freitags auslösen:

1 = Montag
2 = Dienstag
3 = Mittwoch
4 = Donnerstag
5 = Freitag
6 = Samstag
7 = Sonntag


---

5 Aktuelle UNIXTIME .now()

{DC.znil.local:vfs.fs.size[D:,free].now()}=1514073600

würde nur bis zum 23.12.2017 um 23:59:50 auslösen. Es wird die Zeit in Sekunden seit dem 1.1.1970 zurück gegeben.
Würde ich eher zum Berechnen von Zeitunterschieden nutzen.


6 Kommentare


Kommentar hinzufügen
znilwiki freut sich über alle Kommentare. Sofern du nicht anonym bleiben möchtest, trage deinen Namen oder deine Email-Adresse ein oder melde dich an. Du kannst das Feld auch einfach leer lassen.