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 Zabbix obsługuje następujące przyrostki czasu w konfiguracji encji:
- s - sekundy (po użyciu działa tak samo jak wartość surowa)
- m - minuty
- h - godziny
- d - dni
- w - tygodnie
- M - miesiące (funkcje trendów tylko)
- y - lata (funkcje trendów tylko)
Przyrostki czasu są obsługiwane tylko z liczbami całkowitymi. Na przykład 1h jest obsługiwane, ale 1,5h lub 1.5h nie jest 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 formacie czytelnym dla człowieka.
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 działania w formacie hh:mm:ss lub N dni, hh:mm:ss
- unixtime - znacznik czasu Unix, formatowany jako yyyy.mm.dd hh:mm:ss
Obowiązują następujące dodatkowe zasady dotyczące interpretacji i wyświetlania tych przyrostków:
- Dla B i Bps Zabbix używa przelicznika o podstawie 2 (1K = 1024B), zgodnie ze standardem JEDEC.
- Dla innych jednostek (takich jak Hz, W itp.) Zabbix używa przelicznika o podstawie 10 (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ę pomiędzy dwiema niezerowymi jednostkami, jest pomijana (np. 10d 56m zamiast 10d 0h 56m).
Gdy używane jest pole 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, jota (są stosowane tylko we frontendzie)
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 wykluczonych jednostek, obejmująca ms, rpm, RPM, %.
Ta lista została wycofana, dlatego poprawnym sposobem zapobiegania konwersji takich jednostek jest użycie !ms, !rpm, !RPM, !%.