7 Symbole jednostek

Przegląd

Praca z dużymi wartościami, takimi jak 86400, 104857600 lub 1000000, może być trudna i prowadzić do błędów. Aby uprościć konfigurację i poprawić czytelność, Zabbix obsługuje symbole jednostek (sufiksy), które działają jako mnożniki wartości.

Wyrażenia wyzwalaczy bez sufiksów:

last(/host/system.uptime)<86400
avg(/host/system.cpu.load,600s)<10
last(/host/vm.memory.size[available])<20971520

Wyrażenia wyzwalaczy z sufiksami:

last(/host/system.uptime)<1d
avg(/host/system.cpu.load,10m)<10
last(/host/vm.memory.size[available])<20M

Sufiksy mogą również uprościć konfigurację innych obiektów, takich jak pozycje, widgety itp., a także pomóc w wyświetlaniu wartości pozycji w formacie czytelnym dla człowieka.

Aby sprawdzić, czy pole konfiguracji danego obiektu obsługuje sufiksy, zawsze należy zajrzeć na odpowiednią stronę dotyczącą konfigurowanego obiektu.

Przyrostki czasu

Frontend Zabbixa obsługuje następujące przyrostki czasu w konfiguracji elementów:
s - sekundy (w użyciu działa tak samo jak wartość surowa);
m - minuty;
h - godziny;
d - dni;
w - tygodnie;
M - miesiące (tylko funkcje trendów);
y - lata (tylko funkcje trendów).

Przyrostki czasu są obsługiwane tylko dla liczb całkowitych. Na przykład 1h jest obsługiwane, ale 1,5h lub 1.5h nie są obsługiwane; zamiast tego użyj 90m.

Przyrostki rozmiaru pamięci

Zabbix obsługuje następujące przyrostki rozmiaru pamięci:
K - kilobajty
M - megabajty
G - gigabajty
T - terabajty

Przyrostki wartości pozycji

Przyrostki mogą być również używane do wyświetlania numerycznych wartości pozycji w czytelnym dla człowieka formacie.

Aby to włączyć, użyj jednego z następujących przyrostków w polu Units podczas konfigurowania pozycji:
B - bajty;
Bps - bajty na sekundę;
s - sekundy, wyświetlane z użyciem maksymalnie trzech największych niezerowych jednostek czasu;
uptime - czas, który upłynął, w formacie hh:mm:ss lub N dni, hh:mm:ss;
unixtime - znacznik czasu Unix, sformatowany jako yyyy.mm.dd hh:mm:ss.

Do interpretacji i wyświetlania tych przyrostków mają zastosowanie następujące dodatkowe reguły:

  • Dla B i Bps Zabbix używa konwersji opartej na systemie dwójkowym (1K = 1024B), zgodnie ze standardem JEDEC.
  • Dla innych jednostek (takich jak Hz, W itp.) Zabbix używa konwersji dziesiętnej (1K = 1000).
  • Dla s (sekund):
    • Format obejmuje yyy mmm ddd hhh mmm sss ms; wyświetlane są tylko maksymalnie trzy największe niezerowe jednostki czasu (np. 1M 10d 4h).
    • Jeśli jednostka ma wartość zero i znajduje się między dwiema niezerowymi jednostkami, jest pomijana (np. 10d 56m zamiast 10d 0h 56m).

Gdy używane są Units, do wartości pozycji automatycznie stosowane są następujące przyrostki mnożnika:
K, M, G, T - kilo, mega, giga, tera;
P, E, Z, Y - peta, eksa, zetta, yotta (są one stosowane tylko w frontend).

Aby zapobiec konwersji jednostek, użyj prefiksu ! (np. !B lub !s).

Poniższe przykłady pokazują, jak odebrane wartości pozycji są konwertowane na podstawie określonych jednostek:

1 B → 1 B
1024 B → 1 KB
1536 B → 1.5 KB
881764 B → 881.76 KB
881764 !B → 881764 B

0.0000155 s → 0.016ms
3470400 s → 1M 10d 4h
2606400 s → 1M 4h
2592000 s → 1M
2592001 s → 1M
2592001 !s → 2592001 s

17764 uptime → 04:56:04
86400 uptime → 1 day, 00:00:00
881764 uptime → 10 days, 04:56:04
32417764 uptime → 375 days, 04:56:04
32417764 !uptime → 32417764 uptime

881764 unixtime → 1970-01-11 04:56:04 AM

17764 Hz → 17.76 KHz
86400 Hz → 86.4 KHz
881764 Hz → 881.76 KHz
32417764 Hz → 32.42 MHz

0 ! → 0
0 !! → 0 !

Przed Zabbix 4.0 istniała zakodowana na stałe lista wykluczeń jednostek, obejmująca ms, rpm, RPM, %. Lista ta została wycofana, dlatego poprawnym sposobem zapobiegania konwersji takich jednostek jest !ms, !rpm, !RPM, !%.