This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.
Table of Contents

5 Co nowego w Zabbix 2.2.0

5.1 Udoskonalone monitorowanie sieci www

5.1.1 Szablony scenariuszy sieci www

Poprzednio scenariusze sieci www nie mogły być elementami szablonów, stąd trudne było przypięcie jednego scenariusza do wielu hostów.

Począwszy od wersji Zabbix 2.2.0 scenariusze sieci www mogą być elementami szablonów tak samo jak pozycje, wyzwalacze, wykresy, ekrany i niskopoziomowe reguły wykrywania. Jeżeli szablon jest związany z kilkoma hostami, wszystkie hosty będą dziedziczyć scenariusze sieci www z szablonu.

W interfejsie użytkownika, scenariusze sieci www są teraz tworzone odpowiednio w Konfiguracja → Szablony i // → Hosty//, podobnie jak pozycje, wyzwalacze, itp. Nie istnieje już oddzielne menu Konfiguracja → Web.

5.1.2 Nowe parametry konfiguracji

Formularz konfiguracji scenariusza sieci www zyskał nowe parametry.

Powtarzanie kroków scenariuszy sieci www

Dodano nowy parametr Powtórzenia, pozwalający określić liczbę prób wykonania kroków scenariusza sieci www, w przypadku opóźnień i problemów z siecią.

Użycie proxy HTTP

Użycie proxy HTTP można określić bezpośrednio w formularzu konfiguracji scenariusza sieci www.

5.1.3 Więcej opcji dla zmiennych

Dopasowanie do wyrażeń regularnych

Dodatkowo oprócz standardowej składni zmiennej {zmienna}=wartość dostępna jest również składnia {zmienna}=regex:<wyrażenie regularne> dla znajdowania dopasowań na stronie sieci www zgodnych z wyrażeniem regularnym. Ciąg regex: że następujący za nim ciąg ma być traktowany jak wyrażenie regularne.

Na przykład,

{hostid}=regex:hostid is ([0-9]+)

Szuka ciągu "//hostid is //" a następnie wyciąga dowolną liczbę, która występuje za ciągiem i przypisuje ją do zmiennej.

Zmienne na poziomie kroku

Aktualnie można definiować zmienne nie tylko na poziomie scenariusza, ale również na poziomie kroku. Zmienne poziomu kroku nadpisują zmienne poziomu scenariusza lub zmienne z poprzedniego kroku.

5.1.4 Udoskonalone logowanie błędów

Poprzednio, gdy serwer lu proxy wykonujący monitorowanie www napotkali błąd, podawane były jedynie nazwa scenariusza i kroku, na przykład:

web scenario step "scenariusz:krok" error: error doing curl_easy_perform: Couldn't resolve host name

Przy monitorowaniu opartym o szablony ważniejsza jest informacja, którego hosta dotyczył problem, dlatego komunikat zawiera również tę informację:

cannot process step "krok" of web scenario "scenariusz" on host "host": Couldn't resolve host name

Dodatkowo, bardziej szczegółowe komunikaty można uzyskać na 3 poziomie debugowania.

5.2 Monitorowanie maszyn wirtualnych

W Zabbix 2.2.0 nowością jest monitorowanie maszyn wirtualnych VMware. Pozwala monitorować właściwości i statystyki maszyn wirtualnych z instalacji VMware vCenter i vSphere, dla wielu hipernadzorców VMware.

Zabbix może użyć niskopoziomowych reguł wykrywania do automatycznego wykrycia hipernadzorców VMware i ich maszyn wirtualnych oraz może utworzyć dla nich hosty do monitorowania, wykorzystując przy tym predefiniowane prototypy hostów. Szczegółowe informacje można obejrzeć w Monitorowanie maszyn wirtualnych.

5.3 Wsparcie dla dyskretnych czujników IPMI

Poprzednio Zabbix wspierał odczyty jedynie z progowych (analogowe) czujników IPMI. W Zabbix 2.2.0 dodano odczyt stanu dyskretnych czujników IPMI. Do testowania stanów bitów czujników dyskretnych można użyć funkcji band() (bitowe AND) oraz udoskonalonej funkcji count().

5.4 Ładowalne moduły

Ładowalne moduły, nowość w Zabbix 2.2, pozwalają rozszerzyć funkcjonalność Zabbix wydajniej niż opcje parametrów użytkownika czy testy zewnętrzne. Dodatkowo oprócz wysokiej wydajności i możliwości implementowania dowolnej logiki, moduły mogą być tworzone i współdzielone przez społeczność Zabbix.

Obsługiwany w systemach uniksowych, moduł ładowalny to w zasadzie współdzielona biblioteka używana przez serwer lub agenta Zabbix, ładowana podczas startu. Do pracy z modułami, serwer i agent Zabbix wykorzystują dwa nowe parametry konfiguracji: LoadModulePath i LoadModule. Moduły muszą być umieszczone w katalogu określonym w LoadModulePath. Dopuszczalne jest podanie wielu parametrów LoadModule.

W Zabbix 2.2, w katalogu src/modules/dummy umieszczony został przykład modułu napisany w języku C. Może być użyty jako szablon dla nowych modułów. Żeby nauczyć się więcej na temat opcji modułów ładowalnych, należy przejść do odpowiedniego rozdziału dokumentacji.

5.5 Odwoływanie się do wartości pozycji w nazwach wykresów

Począwszy od Zabbix 2.2, można odwoływać się w nazwie do wartości pozycji, używając prostych makr o standardowej składni {host:klucz.func(param)}.

Podobnie do etykiet map, w nazwach wykresów, w makrach tych obsługiwane są wyłącznie funkcje avg, last, max i min z parametrem w sekundach. Mapowanie wartości jest również obsługiwane.

Dodatkowo w parametrach kluczy pozycji obsługiwane są makra niskopoziomowych reguł wykrywania, co daje możliwość wykorzystania makra takiego jak: {Cisco switch:ifAlias[{#SNMPINDEX}].last()}

Makro {HOST.HOST<1-9>} może być użyte do wskazania hosta: {{HOST.HOST}:ifAlias[{#SNMPINDEX}].last()}. Ponieważ wykresy mogą zawierać pozycje z różnych hostów, {HOST.HOST} i {HOST.HOST1} będą wskazywać na pierwszy host, {HOST.HOST2} na drugi i tak dalej.

5.6 Powiadomienia o niewspieranych pozycjach, nieznanych wyzwalaczach

W poprzednich wersjach Zabbix nie było możliwe otrzymywanie powiadomień o niewspieranych pozycjach. Jeżeli jakaś pozycja stawała się niewspierana (i przestawała zbierać dane) mogła być niezauważona przez dłuższy czas. Jedynym sposobem na wykrycie niewspieranych pozycji było ciągłe śledzenie listy pozycji, co było raczej niepraktyczne.

Począwszy od wersji Zabbix 2.2 zapoczątkowano nową koncepcję zdarzeń wewnętrznych. Zdarzenia wewnętrzne występują nie tylko wtedy gdy pozycje stają się niewspierane ale również gdy niskopoziomowe reguły wykrywania stają się niewspierane oraz gdy wyzwalacz przechodzi w stan nieznany

Plusem istnienia zdarzeń wewnętrznych jest to, że użytkownik może skonfigurować akcje bazujące na tych zdarzeniach, podobnie do akcji bazujących na zdarzeniach wyzwalaczy, i może otrzymywać powiadomienia o niewspieranych pozycjach (niewspieranych niskopoziomowych regułach wykrywania, nieznanych wyzwalaczach). Więcej informacji na temat konfiguracji powiadomień dla pozycji niewspieranych można zobaczyć w tym rozdziale.

5.7 Mapowanie wartości dla ciągów i danych zmiennoprzecinkowych

W Zabbix 2.0 mapowanie wartości dostępne było jedynie dla całkowitych typów danych. W 2.2.0 zaimplementowano pełne wsparcie dla znaków i typów numerycznych zmiennoprzecinkowych. Na przykład, mapa wartości związana z backupami mogłaby być taka:

  • F → Pełny
  • D → Różnicowy
  • I → Przyrostowy

W MonitorowanieOstatnie dane, wartości wyświetlane zostały skrócone do 20 znaków. Jeżeli zastosowane zostanie mapowanie wartości, nie nastąpi skrócenie mapowanej wartości, a tylko oryginalnej wartości (wyświetlanej w nawiasach).

Należy zauważyć, że mapowanie wartości nie jest dostępne dla typów danych tekstowych oraz logów.

5.8 Zwiększenie limitu długości wyzwalacza

Limit maksymalnej długości wyrażeń wyzwalacza został zwiększony z 255 do 2048. Należy zauważyć, że jest to limit "nieprzetworzony", w większości przypadków długość wyrażenia może się w trakcie przetwarzania znacznie wydłużyć.

5.9 Niektóre parametry funkcji wyzwalaczy mogą być puste

Bardziej przyjazny parser wyrażeń wyzwalaczy pozwala pominąć parametry opcjonalne w funkcjach wyzwalaczy. Na przykład, funkcja wyzwalacza "last(#1)" może być zapisana jako "last()", "last(#1,1h)" - jako "last(,1h)".

Działa to również w funkcjach pozycji wyliczanych.

5.10 Udoskonalenia map sieci

5.10.1 Filtrowanie poziomu wyzwalacza w mapach

Konfiguracja map poszerzona została o opcję definiującą najniższy poziom wyzwalacza. W ten sposób tylko wyzwalacze ze zdefiniowanego poziomu i powyżej, będą wyświetlane na mapach, a wyzwalacze poniżej zdefiniowanego poziomu nie będą wyświetlane.

Na przykład, będą wyświetlane tylko wyzwalacze począwszy od poziomu Ostrzeżenie. Wyzwalacze o poziomach Informacja i Niesklasyfikowane nie będą uwzględniane na mapie.

Poziomy wybrane w konfiguracji mapy mogą być opcjonalnie zmienione podczas oglądania map w Monitorowanie → Mapy:

5.10.2 Zwiększenie limitu długości etykiety mapy

Limit maksymalnej długości etykiet elementów mapy i etykiet łącz został zwiększony z 255 do 2048.

5.10.3 Ikony we właściwościach elementów mapy są teraz uporządkowane

Poprzednio, w trakcie konfiguracji elementów mapy, ikony były wyświetlane w kolejności utworzenia. Od teraz są porządkowane alfabetycznie.

5.11 Lepsza kontrola zleceń porządkowania

Poprzednio, przy użyciu opcji konfiguracji serwera DisableHousekeeping, proces porządkowania Zabbix można było kompletnie wyłączyć. Było to zalecane działanie w przypadku, gdy proces porządkowania napotkał jakieś problemy, na przykład z dużą tabelą historii. Niestety oznaczało to również wyłączenie wszystkich zleceń porządkowania, podczas gdy prawdziwy problem wystąpił tylko z jednym.

W Zabbix 2.2 wprowadzono lepszą kontrolę zleceń porządkowania. Parametr DisableHousekeeping nie jest już obsługiwany. Zamiast tego można kontrolować zlecenia porządkowania z poziomu interfejsu użytkownika, w Administracja → Ogólne → Porządkowanie, można włączyć/wyłączyć poszczególne zlecenia porządkowania.

5.12 Udoskonalenia uprawnień

Poprzednio, gdy użytkownik (z dwóch różnych grup użytkowników) miał zarówno prawa do "Odczytu" i do "Zapisu i odczytu" dla danego hosta, host był dla niego tylko do "Odczytu". Było to bardzo mylące.

W Zabbix 2.2 prawa do "Zapisu i odczytu" są ważniejsze od praw do "Odczytu". Aktualnie tylko "Zabroń" może zablokować dostęp do hosta.

5.13 Łączenie szablonów z taką samą nazwą aplikacji

Poprzednio nie było możliwe podłączenie szablonów posiadających takie same nazwy aplikacji do jednego hosta (lub szablonu). W Zabbix 2.2 jest to dozwolone.

5.14 Dostępne dane historyczne dla wyłączonych hostów

Wyłączone hosty są dostępne w Monitorowanie → Ostatnie dane oraz w Monitorowanie → Wykresy i Monitorowanie → WWW. Dostęp do ostatnich danych daje również dostęp do wykresów i list wartości pozycji dla wyłączonych hostów.

Gdy dostępne są informacje wyłączonych hostów, wyświetlane są one na listach na czerwono:

5.15 Zmiana logiki okresów utrzymania

Poprzednio, pierwszy okres utrzymania dla każdego drugiego/trzeciego/itd. dnia występował w drugim/trzecim/itd. dniu po dniu Aktywne od. Teraz pierwszy okres będzie miał miejsce w dniu Aktywne od a następnie w każdym drugim/trzecim/itd. dniu.

5.16 Monitorowanie SNMPv3

5.16.1 Obsługa nazwy kontekstu

Aktualnie w konfiguracji pozycji, prototypów pozycji, niskopoziomowych reguł wykrywania oraz reguł wykrywania sieci obsługiwana jest opcjonalnie nazwa kontekstu SNMPv3. W polu tym przetwarzane są makra użytkownika.

5.16.2 Obsługa protokołu SHA/AES

Dodano obsługę protokołów autoryzacji SHA/prywatności AES. Poprzednio obsługiwane były jedynie protokoły autoryzacji MD5/prywatności DES.

Podczas konfiguracji pozycji, prototypów pozycji, niskopoziomowych reguł wykrywania oraz reguł wykrywania sieci z SNMPv3, jeżeli jako Poziom bezpieczeństwa wybrano authNoPriv dostępna jest dodatkowo opcja SHA, a gdy jako Poziom bezpieczeństwa wybrano authPriv dostępne są obie opcje SHA i AES:

5.17 Możliwość wyciągania części zgodnej z wyrażeniem regularnym

Celem udoskonalenia było umożliwienie wyciągnięcia tylko interesujących wartości, zamiast zwracania całej linii zgodnej z wyrażeniem regularnym.

Zabbix posiadał już możliwość przeszukiwania plików, logów lub stron www z wykorzystaniem wyrażeń regularnych. Możliwość ta jest dostępna w takich pozycjach agenta jak vfs.file.regexp[], log[], logrt[] i web.page.regexp[]. Jednakże do tej pory, jeżeli wyrażenie regularne coś znalazło, zwracana była cała linia.

W Zabbix 2.2 pozycje te zostały rozszerzone o możliwość ograniczenia liczby przeszukiwanych linii oraz o możliwość wyciągnięcia wymaganej wartości z linii. Umożliwiono to przez dodanie do pozycji kilku dodatkowych parametrów: <linia startowa>, <linia końcowa>, <wyjście>. Na przykład, pozycja vfs.file.regexp[] otrzymała wszystkie 3 dodatkowe parametry:

vfs.file.regexp[plik, regexp, <kodowanie>, <linia startowa>, <linia końcowa>, <wyjście>]

I tak <linia startowa> i <linia końcowa> są parametrami opcjonalnymi pozwalającymi określić linie początkową i końcową dla wyszukiwania, wyjście pozwala określić podgrupy zgodności, które nas interesują.

Zatem, na przykład

vfs.file.regexp[/ścieżka/do/jakiegoś/pliku,"([0-9]+)$",,3,5,\1]

pozwala zwrócić interesujące nas liczby z pliku docelowego znajdujące się na końcu linii 3-5. Zabbix zwróci tylko liczby ponieważ wyjście zdefiniowane jako \1 odwołuje się jedynie do pierwszej podgrupy: ([0-9]+)

A, w związku z możliwością zwracania liczb, wartość może być użyta do zdefiniowania wyzwalaczy.

Podobnie, opcjonalny parametr <wyjście> uzyskały inne rozszerzone pozycje: log[], logrt[] i web.page.regexp[].

Zmiany powiązane:

  • jeżeli nie znaleziono dopasowania do wyrażenia regularnego, zwracany jest pusty ciąg (zamiast EOF)
  • vfs.file.regmatch[] rozszerzone zostało o parametry <linia startowa> i <linia końcowa>

Zobacz również dokumentację pozycji agenta Zabbix.

5.18 Obsługa testów wewnętrznych dla proxy

Poprzednio nie było łatwo monitorować stan proxy Zabbix. Począwszy od Zabbix 2.2.0 testy wewnętrzne hostów monitorowanych przez proxy są przetwarzane przez proxy, co pozwala monitorować metryki wydajności proxy.

Przez proxy obsługiwane są następujące testy wewnętrzne:

  • zabbix[proxy_history] (obsługiwane jedynie przez proxy - liczba wartości oczekujących na wysłanie do serwera)
  • zabbix[boottime]
  • zabbix[host,<typ>,available]
  • zabbix[hosts]
  • zabbix[items]
  • zabbix[items_unsupported]
  • zabbix[java,,<parametr>]
  • zabbix[process,<typ>,<tryb>,<stan>] (procesy alarmowania, db watchdog, eskalatora, kontroli węzłów, pobierania proxy i czasowe nie są obsługiwane, za to obsługiwane są dwa inne typy procesów - wysyłania danych i wysyłanie rytmu serca)
  • zabbix[queue,<od>,<do>]
  • zabbix[rcache,<cache>,<tryb>]
  • zabbix[requiredperformance]
  • zabbix[uptime]
  • zabbix[wcache,<cache>,<tryb>] (cache trendów nie jest obsługiuwany przez proxy)

Szczegółowe informacje można zobaczyć w dokumentacji testów wewnętrznych.

5.19 Szablony

Szablony FreeBSD i OpenBSD zawierają teraz reguły wykrywania interfejsów sieciowych.

Szablon serwera Zabbix zaktualizowano o pozycje związane z cache'm wartości oraz dodano inne wpisy.

Wiele usług z szablonów bez agentów rozdzielono na indywidualne szablony.

Wszystkim wyzwalaczom z Template App Zabbix Server i Template App Zabbix Proxy zmniejszono czułość i użyto histerezy.

We wszystkich szablonach wykorzystano sufiksy oraz funkcji agregacji.

Rozszerzono wszystkie szablony OS o wykresy pamięci.

5.20 Zmiany wykrywania sieci

Począwszy od Zabbix 2.2.0 hosty wykrywane przez różne proxy zawsze traktowane są jako inne hosty. Pozwala to przeprowadzić wykrywanie dla tych samych zakresów IP w różnych podsieciach.

5.21 Pozycje

5.21.1 Oficjalne monitorowanie baz danych

Od jakiegoś czasu w Zabbix istnieje monitorowanie ODBC, ale do tej pory brakowało właściwej dokumentacji i miało ono status nieoficjalnego rozszerzenia. Teraz pozycja ta jest wreszcie udokumentowana i można podnieść jej status do rozszerzenia oficjalnego.

Dodatkowo, udoskonalono konfigurację pozycji dla monitorowania baz danych w interfejsie użytkownika. Poprzednio, kilka parametrów - DSN, nazwa użytkownika, hasło i zapytanie SQL były wprowadzane w jednym polu. Teraz DSN przeniesiono do drugiego parametru klucza pozycji, nazwa użytkownika i hasło mają swoje oddzielne pola a w oryginalnym polu pozostało tylko zapytanie SQL, co pozwala wprowadzać bardziej czytelne zapytania w wielu liniach.

5.21.2 Obsługa notacji naukowej w otrzymywanych wartościach

Pozycje z typem informacji "Liczba (zmiennoprzecinkowa)" obsługują teraz w otrzymywanych wartościach notację naukową z określoną potęgą. Np. 1.234e+5.

5.21.3 Udoskonalone pozycje

logrt w Windows obsługuje teraz znaki wielobajtowe w nazwach ścieżek. Np. logrt[c:\логи\app1.*].
system.swap.size na Windows i Tru64 obsługuje teraz parametr "used". Np. system.swap.size[all,used].

eventlog obsługuje teraz komunikaty zdarzeń Windows z nowego systemu logowania zdarzeń ("Windows Eventing 6.0") zapoczątkowanego w Windows Vista.

eventlog w filtrze źródła obsługuje teraz wyrażenia regularne.

5.21.4 Zmienione pozycje

Test wewnętrzny zabbix[items] zwraca teraz liczbę monitorowanych pozycji zamiast ogólnej liczby pozycji w bazie danych.

5.21.5 Nowe pozycje

system.swap.size jest teraz obsługiwane na AIX.

net.if.discovery jest teraz obsługiwane na FreeBSD, OpenBSD i NetBSD.

system.sw.arch jest teraz obsługiwane na NetBSD, OpenBSD, Mac OS X, AIX, HP-UX, Solaris, Tru64, FreeBSD i Windows.

proc.num, net.if.in, net.if.out i net.if.total są teraz obsługiwane na HP-UX. Uwaga: pozycje net.if.in, net.if.out i net.if.total nie udostępniają statystyk interfejsu loopback (np. lo0).

sensor jest teraz obsługiwane na Linux 2.6+.

Test wewnętrzny zabbix[hosts] zwraca liczbę monitorowanych hostów.

Do agenta Windows dodano wmi.get, żeby obsługiwać zapytania WMI.

5.21.6 Wyliczanie trendów

Udoskonalono wyliczanie wartości średniej trendu dla pozycji z numerycznymi typami danych bez znaku. Poprzednio wartość średnia była trzymana jako liczba całkowita, co powodowało utratę precyzji przy małych zmianach między dwoma wartościami. Na przykład, dla wartości zmieniających się od 1 do 5 rezultatem powinno być 1. Wprowadzono przechowywanie sumy wartości i tylko obliczanie średniej podczas zachowywania do bazy. Należy zauważyć, że wynik dalej jest przechowywany w bazie jako liczba całkowita. Na przykład, jeżeli pozycja ma wartości 0 i 1, wartość średnia będzie równa 0, a nie 0.5.

Dla pozycji z częścią ułamkową nic się nie zmieniło, dalej średnia jest obliczana jako liczba z częścią ułamkową.

5.21.7 Zmiany walidacji

Wprowadzono bardziej restrykcyjną walidację parametrów w agencie Zabbix. Poprzednio parametry dla pozycji, które nie wspierały parametrów, były ignorowane, teraz pozycje zwrócą ZBX_NOTSUPPORTED i staną się niewspierane.

5.22 Funkcje wyzwalaczy

5.22.1 Funkcje logiczne do testowania bitów

Obsługiwana jest teraz nowa funkcja band() (bitwise AND). Na przykład, żeby sprawdzić czy najbardziej i najmniej znaczący bit w bajcie jest ustawiony na 1, wyrażenie wyzwalacza można ustawić tak

{www.zabbix.com:Power Unit Stat.band(#1,129)}=129

Funkcja count() została rozszerzona o operator "band". Na przykład, żeby zliczyć wartości z ostatnich 10 minut posiadające '110' (binarnie) na 3 najmniej znaczących bitach, wyrażenie powinno wyglądać tak

count(600,6/7,"band")

gdzie '6' jest liczbą do porównania ('110') a '7' jest maską bitową ('111' binarnie).

5.22.2 Obsługa sufiksów czasu przy testowaniu

Na stronie testowania warunku wyrażenia wyzwalacza dodano obsługę standardowych sufiksów czasu Zabbix ("s", "m", "h", "d" i "w"), można ich używać do testowania wartości.

5.22.3 Udoskonalone obliczanie funkcji nodata()

Poprzednio, gdy dodano nową pozycję (na przykład, przez utworzenie pozycji, dodanie hosta lub podłączenie szablonu) i istniał wyzwalacz z funkcją nodata(), najprawdopodobniej był on uruchamiany zanim pozycja w ogóle miała szansę otrzymać jakąkolwiek wartość. Począwszy od Zabbix 2.2.0, funkcja nodata() uruchomi się jedynie po okresie, określonym w parametrach funkcji.

5.23 Makra

5.23.1 Nowe makra powiadomień

Dla powiadomień wprowadzono znacznie rozszerzony zbiór makr, który pozwala uzyskać więcej informacji i który pozwala obsłużyć nową funkcjonalność zdarzeń wewnętrznych Zabbix:

  • {ACTION.ID}, {ACTION.NAME} - zwraca ID lub nazwę akcji, która dostarczyła powiadomienie. Obsługiwane w akcjach dla wszystkich źródeł zdarzeń.
  • {EVENT.STATUS}, {EVENT.VALUE} - zwraca słownie i numerycznie stan zdarzenia, które wywołało powiadomienie. Obsługiwane w wyzwalaczach i wewnętrznych akcjach bazujących na zdarzeniach. Dodatkowo, wszystkie poprzednio istniejące makra EVENT.* ograniczone zostały do zwracania informacji tylko dla oryginalnego problemu - jako że informacje o zdarzeniu odzyskania zwracane są przez nowe makra EVENT.RECOVERY.*.
  • {EVENT.RECOVERY.ID}, {EVENT.RECOVERY.DATE}, {EVENT.RECOVERY.TIME}, {EVENT.RECOVERY.STATUS}, {EVENT.RECOVERY.VALUE} - zwracają ID/datę/czas/stan słowny lub numeryczny zdarzenia odzyskania. Makra te są opracowane specjalnie dla komunikatów odzyskania. Obsługiwane w wyzwalaczach i wewnętrznych akcjach bazujących na zdarzeniach.
  • {ITEM.STATE}, {TRIGGER.STATE} - zwraca słowny stan pozycji/wyzwalacza, który wywołał powiadomienie.
  • {LLDRULE.NAME.ORIG}, {LLDRULE.KEY.ORIG} - zwraca oryginalną nazwę lub klucz (bez rozwiniętych makr) niskopoziomowej reguły wykrywania.
  • {LLDRULE.ID}, {LLDRULE.NAME}, {LLDRULE.KEY}, {LLDRULE.DESCRIPTION}, {LLDRULE.STATE} - zwraca ID/nazwę/klucz/opis lub słowny stan niskopoziomowej reguły wykrywania, która spowodowała powiadomienie.

Więcej szczegółów można zobaczyć w makrach wspieranych w lokalizacjach.

5.23.2 Obsługa makr niskopoziomowego wykrywania w wyrażeniach wyzwalaczy

Makra niskopoziomowego wykrywania mogą być teraz używane w stałych w wyrażeniach wyzwalaczy. Na przykład, {#MY_CUSTOM_MACRO} z:

{ 
         "{#FSNAME}":"\/", 
         "{#FSTYPE}":"ext4", 
         "{#MY_CUSTOM_MACRO}":"90"
       }

można użyć w następującym prototypie wyzwalacza:

{Template_OS_Linux:vfs.fs.size[{#FSNAME},pused].last()}>{#MY_CUSTOM_MACRO} 

Makro musi zwracać wartość numeryczną, żeby zostało przetworzone prawidłowo. jeżeli wartość makra nie jest numeryczna lub nie znaleziono wartości, prawdziwy wyzwalacz nie zostanie utworzony.

5.23.3 Obsługa makr niskopoziomowych reguł wykrywania w opisach pozycji i wyzwalaczy

Teraz w opisach pozycji i wyzwalaczy można używać makr niskopoziomowych reguł wykrywania.

5.23.4 Makra w opisach wyzwalacza

Poprzedni zestaw makr obsługiwany w nazwach wyzwalaczy jest teraz również obsługiwany w opisach: {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.LASTVALUE} i {$MACRO}.

Makra te będą przetwarzane podczas oglądania komentarzy wyzwalaczy w Monitorowanie → Wyzwalacze jak również wewnątrz makra {TRIGGER.DESCRIPTION} przy powiadomieniach.

5.23.5 Makra w skryptach globalnych

Makra użytkowników obsługiwane są teraz w komendach i tekstach potwierdzeń skryptów globalnych.

Teksty potwierdzeń skryptów globalnych przetwarzają również makra nazw hostów - {HOST.HOST}, {HOST.NAME} i makra połączeń hostów - {HOST.IP}, {HOST.DNS}, {HOST.CONN}.

5.23.6 Makra użytkownika w dozwolonych hostach

Makra użytkownika są teraz obsługiwane w polu Dopuszczalne hosty pozycji trappera.

5.24 Udoskonalenia interfejsu użytkownika

5.24.1 Udoskonalony wygląd

Po przeprojektowaniu w Zabbix 2.0, niektóre strony interfejsu użytkownika nie wyglądały zbyt satysfakcjonująco na wąskich oknach przeglądarek (lub na niewielkich urządzeniach). W wersji Zabbix 2.2 wprowadzono znaczne ulepszenia, i teraz większość stron powinna się dużo lepiej skalować. Na przykład, strona ustawień ogólnych interfejsu użytkownika przed i po przeprojektowaniu wyglądają całkiem inaczej:

Przed przeprojektowaniem. Po przeprojektowaniu.

5.24.2 Sekcja Ostatnie dane

Rozwijanie/zwijanie bez przeładowywania strony

Udoskonalono stronę ostatnich danych tak, by było możliwe rozwijanie/zwijanie poszczególnych pozycji (dla aplikacji lub hostów) bez przeładowania strony. Zwiększyło to rozmiar strony, ale w efekcie znacznie zmniejszyło ilość zapytań i poprawiło wrażenia użytkowników.

Opcja Wyświetl szczegóły

Filtr posiada nową opcję Wyświetl szczegóły. Użyte, pozwala na poszerzenie wyświetlanych informacji o pozycji o takie detale jak okres odświeżania, ustawienia historii i trendów, typ pozycji i błędy pozycji (dobre/nieobsługiwane).

Dodatkowo dostępny jest bezpośredni link do szybkich ustawień pozycji bezpośrednio z sekcji monitorowania.

5.24.3 Opcje konfiguracji i dane monitorowania dostępne z inwentarza hosta

W szczegółach inwentarza hosta (dostęp przez Inwentarz → Hosty) są teraz dwie zakładki - Przegląd i Szczegóły. Podczas gdy Szczegóły, jak poprzednio, zawierają wszystkie dane inwentarza dostępne dla hosta, Przegląd zawiera niektóre przydatne informacje ogólne o hoście oraz linki do przygotowanych wstępnie skryptów i różnych aspektów konfiguracji hosta i monitorowanych danych.

5.24.4 Bardziej elastyczny filtr tablicy

Filtr tablicy zyskał nie tylko możliwość wyświetlania wybranych grup, ale także ich ukrywania. Dzięki temu można lepiej zarządzać wyświetlanymi hostami.

Na przykład, możemy mieć hosty 001, 002, 003 w Grupie A a hosty 002, 003 również w Grupie B. Jeżeli wybierzemy pokazywanie Grupy A i ukrywanie Grupy B w tym samym czasie, tylko dane hosta 001 zostaną wyświetlone na Tablicy.

Żeby włączyć funkcjonalność pokaż/ukryj, gdy zostanie wybrana opcja Wybrane w polu Grupy hostów, na formularzu filtra umieszczone zostaną dwa nowe pola. Wyświetl wybrane grupy i Ukryj wybrane grupy są polami samo-uzupełniającymi się - wystarczy zacząć pisać, a pojawi się lista rozwijalna ze zgodnymi grupami hostów do wyboru.

Jeżeli w polu Wyświetl wybrane grupy nic nie będzie, wyświetlane będą wszystkie grupy, z wyjątkiem tych, które zostały wybrane w polu Ukryj wybrane grupy.

5.24.5 Wyświetlanie imienia i nazwiska przy potwierdzeniach

Poprzednio przy potwierdzonych zdarzeniach był wyświetlany jedynie alias użytkownika - czasami nie był on wystarczający, szczególnie w systemach z wieloma użytkownikami.

Informacje w potwierdzeniach poszerzono zatem o imię i nazwisko, wyświetlane w formacie 'alias (imię nazwisko)'. Imię i nazwisko jest pobierane z odpowiednich (teraz opcjonalnych) pól konfiguracji użytkownika.

Imię i nazwisko występuje teraz w:

  • okienkach wyskakujących szczegółów potwierdzeń i akcji na ramce Ostatnie 20 problemów w Tablicy
  • okienkach wyskakujących szczegółów potwierdzeń i akcji na ramce Problemy hosta/grupy hostów w ekranach
  • szczegółach potwierdzenia (dostępnych z Monitorowanie → Wyzwalacze)
  • szczegółach zdarzeń
  • liście członków grupy użytkowników
  • wyborze użytkowników przy konfiguracji grup użytkowników
  • listach operacji akcji
  • zakładce konfiguracji operacji akcji

5.24.6 Możliwość oglądania potwierdzeń na stronie stanu wyzwalacza

Poprzednio, podczas oglądania wyzwalaczy bez zdarzeń na stronie Monitorowanie → Wyzwalacze, można było zauważyć, że zdarzenie wyzwalacza zostało potwierdzone, ale nie było sposobu na obejrzenie potwierdzenia. Aktualnie można kliknąć stan wyzwalacza, żeby zobaczyć szczegóły.

5.24.7 Przegląd filtrowany według aplikacji

Sekcja Monitorowanie → Przegląd zyskała nową opcję filtrowania według aplikacji.

Poprzednio, w przeglądzie hostów wyświetlane były wszystkie pozycje lub wszystkie wyzwalacze, co uniemożliwiało skupienie się na interesujących nas, ważnych informacjach. Teraz przegląd można ograniczyć poprzez wybór określonej aplikacji i wyświetlanie tylko tych pozycji lub wyzwalaczy, które są z nią związane.

Opcja filtrowania przeglądu dostępna jest również w Konfiguracja → Ekrany. Podczas konfiguracji elementów ekranu Przegląd danych i Przegląd wyzwalaczy , dostępne jest nowe pole Aplikacja, w którym można wprowadzić nazwę wymaganej aplikacji:

W efekcie w Monitorowanie → Ekrany możemy otrzymać bardzo prosty i zwięzły element ekranu:

5.24.8 Zdolność dodawania grup hostów, aplikacji pozycji w aktualizacji masowej

Poprzednio, przy używaniu aktualizacji masowej w hostach lub pozycjach, była możliwość zamiany grup hostów i zamiany aplikacji pozycji. Poprzednie grupy hostów/aplikacje były odłączane a następnie były zamieniane na nowe.

Teraz, funkcja zamiany jest dalej dostępna, ale formularz aktualizacji masowej uzyskał dodatkowe pole dla dodawania grup hostów lub aplikacji pozycji. Używając tego pola można dodać zarówno istniejące grupy hostów/aplikacje jak też zupełnie nowe.

Dodatkowe pole jest polem samo-uzupełniającym się - wystarczy zacząć pisać, a pojawi się lista rozwijalna ze zgodnymi grupami hostów/aplikacjami. Jeżeli grupa hostów/aplikacja jest nowa, również pojawi się w liście rozwijalnej, ale będzie oznaczona jako (nowy) wpis za nazwą. Wystarczy przewinąć listę i wybrać.

5.24.9 Zmiany elementów ekranu

Elementy ekranu Stan wyzwalaczy hosta i Stan wyzwalaczy grup hostów zostały zamienione na odpowiednio Problemy hosta i Problemy grupy hostów.

Poprzednio, wyzwalacze bez zdarzeń nie mogły być wyświetlane w tych dwóch elementach, ani w Ostatnie 20 problemów. W efekcie, czasami z ramek znikały wyzwalacze z problemami, których zdarzenia zostały usunięte przez proces porządkowania. Teraz, żeby to naprawić, wyświetlane są również wyzwalacze bez zdarzeń.

5.24.10 Hierarchia w skryptach globalnych

Skrypty globalne można teraz umieszczać w kategoriach. Żeby umieścić skrypt w kategoii, podczas konfiguracji nazwy skryptu należy dodać prefiks z odpowiednią ścieżką, na przykład: Domyślne/.

W trakcie wyświetlania skryptów w menu w sekcji monitorowania, zostaną one zgrupowane według podanych kategorii:

5.24.11 Edytowalne testy wykrywania

Poprzednio w regułach wykrywania można było jedynie tworzyć lub usuwać testy wykrywania. Żeby zmienić istniejący test, trzeba było go najpierw usunąć, a następnie utworzyć nowy, co było dosyć uciążliwe w przypadku testów z kilkoma parametrami. W Zabbix 2.2, testy wykrywania można edytować bezpośrednio.

|<| |<| |-| |<|

5.24.12 Udoskonalony wybór hostów, szablonów, grup hostów

W kilku miejscach interfejsu użytkownika udoskonalono pola wyboru hostów, szablonów i grup hostów. Poprzednio wyświetlało się okienko wyskakujące, teraz dostępne jest pole samo-uzupełniające się.

Wystarczy zacząć pisać, a pojawi się lista rozwijalna ze zgodnymi elementami.

Nowe pola wyboru wprowadzono w:

  • podłączaniu szablonu (zarówno w konfiguracji hostów jak i szablonów)
  • warunkach akcji
  • opcjach masowej aktualizacji hostów/pozycji
  • edycji elementów map
  • edycji elementu ekranu w kilku miejscach
  • operacjach akcji wykrywania (wybór szablonów, grup hostów)
  • poleceniach zdalnych
  • konfiguracji własnych skryptów
  • filtrze pozycji

5.24.13 Wielo-wybór wartości w warunkach akcji

Poprzednio, przy wybieraniu warunków akcji tego samego typu, nie było możliwe wybranie więcej niż jednej wartości na raz. Żeby wybrać dziesięć hostów, trzeba było dodać każdy z dziesięciu hostów pojedynczo.

Teraz, w akcjach wyzwalaczy, dla warunków hostów/szablonów/wyzwalaczy/grup hostów, dostępne jest pole wielo-wyboru, w którym można wybrać wiele wartości na raz i dodać je jednocześnie. To samo udoskonalenie dostępne jest w akcjach dla zdarzeń wewnętrznych, w warunkach hostów/szablonów/grup hostów.

Pole wyboru jest polem samo-uzupełniającym się - wystarczy zacząć pisać, a pojawi się lista rozwijalna ze zgodnymi wartościami. Wystarczy przewinąć listę i wybrać.

Związanym z tym udoskonaleniem jest zwiększenie czytelności poprzez wyświetlanie czcionką pochyłą wybranych wartości warunków akcji (zamiast cudzysłowów).

5.24.14 Udoskonalona strona globalnego wyszukiwania

W porównaniu do poprzedniej wersji, wyniki globalnego wyszukiwania zyskały linki do:

  • monitorowania graficznego (hostów i grup hostów)
  • monitorowania sieci www (hostów i grup hostów)
  • konfiguracji niskopoziomowych reguł wykrywania (hostów i szablonów)
  • konfiguracji scenariuszy sieci www (hostów i szablonów)

5.24.15 Inne udoskonalenia

Udoskonalono formularz masowej aktualizacji hostów, upodabniając go do właściwości hostów. Wprowadzenie zakładek pozwala łatwiej odszukać właściwe kontrolki, a opcje takie jak pola inwentarza jest teraz łatwiej odróżnić od innych.

Przerobiono formularz edycji wyrażeń regularnych.

  • Testowanie ma swoją własną zakładkę
  • Udoskonalono logikę wyświetlania wyników testów. Wyniki pokazywane są po zastosowaniu warunków, nie przed:
Poprzednio, rezultat porównania wyświetlany był od razu, niezależnie od możliwości wystąpienia warunków odwrotnych, takich jak Wynik jest NIEPRAWDZIWY. Teraz wynik jest wyświetlany po sprawdzeniu obydwu warunków a rezultat wyświetlany jest prawidłowo.
  • Zamiast pól wyboru i przycisku Usuń, użyto linku Usuń dla każdej pozycji

Przerobiono formularz konfiguracji okresów utrzymania, włączając w to bardziej zwarty wygląd oraz linki Usuń zamiast pól wyboru i linku Usuń wybrane.

Na większości formularzy wybierane jest automatycznie pierwsze pole.

Lista akcji pokazuje teraz, jakich typów mediów użyto do wysłania powiadomień.

Poprzednio dwie operacje z tym samym odbiorcą wyglądały identycznie, nawet jeżeli użyto innego medium. Teraz różnica zauważalna jest od razu, widać typ mediów.

Ponadto, przy wyświetlaniu użytkowników systemowych, do których zostało wysłane powiadomienie, w nawiasach za aliasem wyświetlane są imię i nazwisko użytkownika (zdefiniowane w konfiguracji użytkownika).

Przed Zabbix 2.2. W Zabbix 2.2.

Poprzednio, gdy używane były pola wyboru czasu, na przykład w okresach utrzymania, wyświetlany był domyślnie aktualny czas. Teraz wyświetlane jest 0 godzin i 0 minut.

Przed Zabbix 2.2. W Zabbix 2.2.

W wielu miejscach interfejsu użytkownika Zabbix określono kolory, włącznie z wykresami i właściwościami map sieci. Poprzednio, dla każdej strony kolory były ustawiane niezależnie, a komunikaty błędów różniły się od siebie. W tej chwili wszystkie strony używają jednolitych kolorów, a komunikaty błędów udoskonalono i ujednolicono.

Ujednolicono stronę "Brak dostępu" a opcja logowania zawsze jest dostępna.

Poprzednio, gdy osiągnięto limit elastycznego interwału dla pozycji, Zabbix nie mógł dodać więcej interwałów, i nie powiadamiał o tym użytkownika. Od Zabbix 2.2.0, po dodaniu 7 elastycznych interwałów do pozycji, wyświetlany jest komunikat "Dodano maksymalną liczbę elastycznych interwałów":

Żeby ułatwić wprowadzanie długich adresów e-mail, zwiększono długość pola Wyślij do we właściwościach mediów użytkownika.

Zmniejszono ogólne zużycie pamięci interfejsu i API, optymalizując funkcje dostępu do bazy danych i redukując ich użycie pamięci o 22-95%.

Poprzednio, włączenie trybu śledzenia błędów dla użytkownika gość nie powodowało pokazywania jakichkolwiek informacji śledzenia. Informacje śledzenie dla użytkownika gość dostępne są od Zabbix 2.2.

Poprzednio, nowo dodawane elementy map, dodawane były z etykietami ustawionymi na Dole, zamiast w domyślnym miejscu dla mapy. Teraz nowe elementy mapy mają etykiety ustawione w domyślnym miejscu dla mapy, i istnieje możliwość zmiany położenia w późniejszym czasie. Dodatkowo, zamiast - (pojedynczy myślnik), do identyfikacji domyślnej lokalizacji użyto tekstu Domyślnie.

Interfejs użytkownika używa teraz wyłącznie linków względnych. Poprzednio, na kilku stronach używano linków bezwzględnych, co powodowało problemy w wielu instalacjach serwerowych, np. z odwrotnymi proxy.

Przy akcjach zbiorowych lista rozwijalna poniżej listy oraz przycisk Wykonaj są wyłączane, gdy nie wybrano żadnej pozycji lub wszystkie pozycje są pozycjami utworzonymi przez niskopoziomowe reguły wykrywania. "Wybierz wszystkie" również jest wyłączane, gdy wszystkie pozycje są pozycjami utworzonymi przez niskopoziomowe reguły wykrywania.

Poprzednio, funkcja Drukuj powodowała przeładowanie całej strony. Zastąpiono to czysto JavaScript-owym rozwiązaniem, co przyśpieszyło w znacznym stopniu działanie.

Mało znaczący komunikat "Nie zdefiniowano <elementu>" zastąpiono wytłumaczeniem, jakiego dokładnie elementu nie znaleziono - na przykład, "Nie zdefiniowano utrzymania" zamieniono na "Nie znaleziono okresów utrzymania".

Poprzednio, pomocnik konfiguracji interfejsu użytkownika na stronie wymagań używał tak/nie do oznaczenia statusu parametru konfiguracji PHP. Zmieniono to na wyświetlanie włączone/wyłączone, by mieć zgodność z ustawieniami w php.ini.

W interfejsie użytkownika z filtra poziomu wyzwalaczy usunięto "Wszystkie", identyczne w działaniu co "Niesklasyfikowane". Parametr GET show_severity=-1, poprzednio zwracający "Wszystkie", teraz domyślnie ustawia "Niesklasyfikowane".

5.25 Udoskonalenia demona

5.25.1 Automatyczna aktualizacja bazy danych

Począwszy od wersji 2.2.0, serwer i proxy Zabbix automatycznie aktualizują bazę danych- ręczne wykonywanie poprawek SQL nie jest już wymagane.

Automatyczna aktualizacja bazy danych dla SQLite nie jest wspierana.

5.25.2 Udoskonalenia proxy Zabbix

Z powodu zwiększenia zakresu ID wartości historii, proxy Zabbix używający PostgreSQL może teraz znacznie dłużej pracować.

Proxy Zabbix wysyła wartości razem z konfiguracją pozycji (jak nazwa hosta, czy klucz pozycji). Poprzednio, dane te odtwarzane były z lokalnej bazy danych, ale począwszy od Zabbix 2.2.0 są odtwarzane z cache'a konfiguracji - ale tylko dane historyczne (z wyjątkiem wykrywania sieci i zdarzeń automatycznej rejestracji agentów).

5.25.3 Obsługa długich i znakowych indeksów SNMP

Poprzednio, reguły wykrywania niskopoziomowegoSNMP używały jedynie ostatnich wartości z OID. Stwarzało to problemy, gdy indeks był dłuższy. Na przykład, w następujących OID ostatnie dwie liczby reprezentują indeks:

CISCO-POP-MGMT-MIB::cpmDS1ActiveDS0s.6.0
       CISCO-POP-MGMT-MIB::cpmDS1ActiveDS0s.6.1
       CISCO-POP-MGMT-MIB::cpmDS1ActiveDS0s.7.0

Bez obsługi długich indeksów Zabbix tworzył pozycje dla pierwszych dwóch OID jako 0 i 1, i nie mógł utworzyć pozycji dla trzeciego OID. Teraz użyta będzie cały OID.

Dodatkowo, począwszy od wersji Zabbix 2.2.0 obsługiwane są indeksy tekstowe.

5.25.4 Cache wartości dla szybkiego dostępu do danych historycznych

W celu przyspieszenia obliczeń wyrażeń wyzwalaczy, pozycji obliczanych/agregowanych i niektórych makr, wprowadzono w serwerze Zabbix cache wartości.

Zamiast wywołań do bazy danych, może być użyty pamięciowy cache danych historycznych. Jeżeli wartości historycznych nie ma w cache'u, brakujące wartości pobierane są z bazy danych i dodatkowo są zapisywane w cache'u.

Żeby włączyć nową funkcjonalność, w pliku konfiguracyjnym serwera Zabbix dodano nowy opcjonalny parametr ValueCacheSize.

Dostępne są dwie nowe wewnętrzne pozycje do monitorowania cache'a wartości: zabbix[vcache,buffer,<tryb>] i zabbix[vcache,cache,<parametr>]. Więcej szczegółów można zobaczyć w pozycjach wewnętrznych.

5.25.5 Redukcja operacji aktualizacji w tabeli pozycji

Poprzednio Zabbix mógł aktualizować kilka pól w tabeli 'items' dla każdej nowej wartości, co dawało w rezultacie wiele operacji aktualizacji SQL i oczywiście zmniejszało wydajność. Żeby zredukować liczbę operacji aktualizacji, teraz do przechowywania pól związanych z ostatnią i poprzednią wartością pozycji, używana jest pamięć współdzielona, znacząco zwiększając wydajność serwera.

Dodatkowo, testy wewnętrzne związane z kolejką używają pamięci współdzielonej zamiast dostępu do bazy danych.

5.25.6 Udoskonalona współpraca z cache'm konfiguracji i historii

Demony serwera i proxy Zabbix będą wykorzystywać dostęp zbiorczy do cache'y konfiguracji i historii. Zmniejszy to ilość wywołań systemowych z operacjami na semaforach i spowoduje wzrost wydajności.

Konkretniej, procesy pułapek Zabbix, gdy odbierały wartości zebrane przez aktywnych agentów lub proxy, pobierały poprzednio odebrane konfiguracje pozycji z cache'a raz za razem, blokując cache za każdym razem. Od wersji Zabbix 2.2 będą pobierać wszystkie wymagane informacje w jednej operacji.

Podobnie, procesy odbierające bramy Java Zabbix będą otrzymywać informacje na temat wszystkich pozycji do zebrania, w jednej operacji.

Podczas wysyłania danych konfiguracji do aktywnych agentów będą stosowane te same zasady - konfiguracja pozycji z cache'a jest pobierana w jednej operacji.

5.25.7 Wiele procesów czasowych

Demon serwera Zabbix będzie obsługiwał przetwarzanie równoległe funkcji bazujących na czasie. Użytkownik może określić liczbę procesów czasowych w nowym parametrze konfiguracji StartTimers.

5.25.8 Logowanie nazwy pliku używanej konfiguracji

Demony Zabbix będą teraz umieszczać w komunikatach logów nazwę pliku używanej konfiguracji. Na przykład, komunikaty startowe demona agenta powinny mieć dodatkową linie podobną do tej:

10159:20130404:184230.963 Starting Zabbix Agent [A Test Host]. Zabbix 2.1.0 (revision 34816).
       10159:20130404:184230.963 using configuration file: /usr/local/etc/zabbix_agentd.conf

5.25.9 Walidacja JSON na serwerze

Poprzednio, zupełnie niewłaściwy JSON mógł być po cichu zaakceptowany przez serwer Zabbix. Począwszy od Zabbix 2.2, przed parsowaniem danych JSON, wykonywana jest kontrola składni. Otwarcie błędnych danych JSON od razu się nie uda, a błąd parsowania zostanie zalogowany jako ostrzeżenie.

5.25.10 Metadane hosta dla automatycznej rejestracji hostów

Poprzednio podczas używania automatycznej rejestracji aktywnych agentów, można było użyć jedynie nazwy hosta do rozróżnienia hostów. W niektórych przypadkach (na przykład, węzły chmury Amazon) oprócz oryginalnej nazwy hosta, dobrze byłoby mieć dostęp do innych informacji wysyłanych przez agenta w celu automatycznej rejestracji.

Żeby takie informacje były dostępne, dodano obsługę dwóch nowych, dodatkowych parametrów konfiguracji agenta:

  • HostMetadata. Parametr opcjonalny, definiujący metadane hosta. Jeżeli nie jest zdefiniowany, wartości będą pobierane z HostMetadataItem.
  • HostMetadataItem. Parametr opcjonalny, definiujący pozycję dla pobrania metadanych hosta. Opcja ta jest używana jedynie wtedy, gdy nie jest używana opcja HostMetadata.

Metadane hosta używane są jedynie przez proces automatycznej rejestracji hosta.

5.25.11 Dynamiczne wyświetlanie aktywności i statystyk aktualnych procesów

Aktualnie procesy Zabbix pokazują typ procesu, numer instancji (jeżeli możliwe jest istnienie więcej niż jednego procesu danego typu), aktualną aktywność i niektóre dane statystyczne z poprzedniej aktywności, zmieniając swoją własną linię poleceń:

zabbix22  4584     1  0 14:55 ?    00:00:00 zabbix_server -c /home/zabbix22/zabbix_server.conf
       zabbix22  4587  4584  0 14:55 ?    00:00:00 zabbix_server: configuration syncer [synced configuration in 0.041169 sec, idle 60 sec]
       zabbix22  4588  4584  0 14:55 ?    00:00:00 zabbix_server: db watchdog [synced alerts config in 0.018748 sec, idle 60 sec]
       zabbix22  4608  4584  0 14:55 ?    00:00:00 zabbix_server: timer #1 [processed 3 triggers, 0 events in 0.007867 sec, 0 maint.periods in 0.005677 sec, idle 30 sec]
       zabbix22  4637  4584  0 14:55 ?    00:00:01 zabbix_server: history syncer #4 [synced 35 items in 0.166198 sec, idle 5 sec]
       zabbix22  4673  4670  0 14:55 ?    00:00:00 zabbix_proxy: configuration syncer [synced config 15251 bytes in 0.111861 sec, idle 60 sec]
       zabbix22  4674  4670  0 14:55 ?    00:00:00 zabbix_proxy: heartbeat sender [sending heartbeat message success in 0.013643 sec, idle 30 sec]
       zabbix22  4688  4670  0 14:55 ?    00:00:00 zabbix_proxy: icmp pinger #1 [got 1 values in 1.811128 sec, idle 5 sec]
       zabbix22  4690  4670  0 14:55 ?    00:00:00 zabbix_proxy: housekeeper [deleted 9870 records in 0.233491 sec, idle 3599 sec]
       zabbix22  4701  4670  0 14:55 ?    00:00:08 zabbix_proxy: http poller #2 [got 1 values in 0.024105 sec, idle 1 sec]
       zabbix22  4740  4738  0 14:55 ?    00:00:00 zabbix_agentd: listener #1 [waiting for connection]
       zabbix22  4741  4738  0 14:55 ?    00:00:00 zabbix_agentd: listener #2 [processing request]

Linia komend głównego procesu pozostaje bez zmian (w poprzedniej wersji na platformach BSD było wyświetlane "main process")

Zobacz również Przeglądanie wydajności procesów Zabbix przy pomocy "ps" i "top".

5.25.12 Inne udoskonalenia demona

  • Procesy pingowania Zabbix nie używają już połączenia do bazy danych.
  • Demon agenta Zabbix obsługuje już parametr AllowRoot. Od Zabbix 2.2.0, demony serwera i proxy również go obsługują.
  • Akceptowalny limit danych użycia protokołu Zabbix zmieniono z 128MB na 64MB. (w wersjach 2.2.0-2.2.2; wrócono do 128MB począwszy od 2.2.3). Pozostałe dane (włączając starsze protokoły Zabbix) dalej ograniczone są do 16MB.
  • Demony serwera i proxy Zabbix teraz prawidłowo używają parametru konfiguracji Opóźnienie przy sprawdzeniach SNMP. Teraz dodatkowo demony nie powtórzą zapytania SNMP po jednym nieudanym zapytaniu (opóźnienie/błędne dane). Poprzednio biblioteka SNMP używała domyślnego opóźnienia i liczby powtórzeń (1 sekunda i 5 powtórzeń).
  • W parametrze Server w pliku konfiguracyjnym demona agenta dozwolone są teraz spacje.
  • Spacje dozwolone są w polu Dopuszczalne hosty w pozycji trappera Zabbix.
  • Porównywanie adresów IP (na przykład, do sprawdzenia połączeń przychodzących w agencie Zabbix lub w pozycjach trappera Zabbix) jest wydajniejsze, gdy demon zostanie zbudowany bez obsługi IPv6. Aktualnie powinny być na takim samym poziomie wydajności jak przy włączonej obsłudze IPv6.
  • Poprzednio proxy Zabbix wysyłały dane dostępności dla szablonów podczas pierwszego uruchomienia. Choć nieszkodliwe, nie było to konieczne. Od 2.2.0, dane dostępności wysyłane są jedynie dla monitorowanych hostów, co zmniejsza nieco obciążenie sieci.
  • Poprzednio serwer Zabbix nie odpowiadał na zapytania konfiguracji proxy i zapytania bicia serca, które miały niewłaściwą nazwę proxy. Począwszy od wersji 2.2, zwracana jest odpowiedź błędu.
  • Teraz serwer Zabbix loguje odpowiedzi na zapytanie globalnego skryptu przy DebugLevel równym 4.
  • Poprzednio serwer Zabbix odrzucał znaki nienumeryczne w wartościach zapytań globalnych skryptów, i po cichu zamykał połączenie w przypadku braku jakiegokolwiek wymaganego parametru. Od wersji 2.2, znaki nienumeryczne i brakujące wartości wymagane powodują zwrócenie komunikatu błędu.
  • Teraz obsługiwane jest ustawianie nazwy wyświetlanej dla adresów Od i Do dla e-maili wychodzących. Na przykład, obsługiwany jest wpis "Zabbix Riga <[email protected]>".
  • Teraz agent Zabbix przy uruchomieniu z parametrem -p wyświetla Aliasy i liczniki wydajności (PerfCounter) określone w pliku konfiguracyjnym agenta.
  • Teraz agent Zabbix zwraca ZBX_NOTSUPPORTED w przypadku błędnych wartości opóźnienie lub licznik testu net.dns.
  • Poprzednio agent Zabbix zwracał 0 w przypadku poprawnego wyjścia i 255 w przypadku błędów. Począwszy od wersji 2.2.0 agent Zabbix zwraca 0 w przypadku poprawnego wyjścia i 1 w przypadku błędów.
  • Począwszy od wersji 2.2 dodano sprawdzanie obecności znaków nie-UTF-8 w plikach konfiguracyjnych serwera, proxy lub agenta. W przypadku obecności znaków nie-UTF-8 w wartościach parametrów program wyjdzie od razu, raportując błąd.
  • W agencie Zabbix udoskonalono mechanizm odpytywania dla system.hostname i system.uname. Dane uzyskiwane są przy użyciu wywołania systemowego uname() zamiast uruchamiania komend powłoki uname lub hostname.
  • Zredukowano obciążenie bazy danych przy przetwarzaniu wyrażeń wyzwalaczy zawierających makra użytkownika.
  • Teraz serwer Zabbix przechowuje globalne wyrażenia regularne w cache'u konfiguracji.
  • Teraz w plikach konfiguracyjnych, w listach z przecinkami, w wielu miejscach dozwolone są białe znaki - dozwolone są również w parametrze ListenIP proxy Zabbix, serwera i agenta oraz w parametrze ServerActive polecenia Zabbix sender.
  • Udoskonalono formatowanie odpowiedzi procesu przechwytywania dla wartości wysyłanych przez Zabbix sender. Nowy format pola informacyjnego to: "processed: <N>; failed: <N>; total: <N>; seconds spent: <N>".
  • Dla baz danych Oracle zwiększono maksymalną długość komunikatów ostrzeżeń.

5.26 Udoskonalenia API

** Nowe API prototypu hosta **

Dla niskopoziomowych reguł wykrywania zaimplementowano API prototypu hosta ze wsparciem dla maszyn wirtualnych, które można również użyć do zarządzania prototypami hostów. Posiada standardowe metody get, create, update, delete, isreadable i iswritable.

** Zmiany w parametrze "output" metody get **

Teraz parametr "output" będzie akceptował również tablice nazw właściwości, żeby zwracać we wszystkich metodach "get" jedynie wymagane dane. Nie będzie już obsługiwana wartość "shorten". Wartość "refer" staje się przedawniona i zostanie usunięta w Zabbix 2.4.

** Udoskonalenia podwyborów metody get **

Teraz wszystkie podwybory metody get obsługują również tablice nazw właściwości, żeby zwracać jedynie wymagane dane. Żeby zestandaryzować zwracane wyniki, będą one zwracane zawsze w postaci tablicy obiektów.

** API "Webcheck" zmieniono na "httptest" **

Żeby zachować konwencję nazewniczą z innymi obiektami związanymi z siecią www, API "webcheck" zamieniono na "httptest". Nazwa "webcheck" stała się przedawniona.

** Nowy typ danych "text" **

W celu przechowywania długich ciągów tekstowych wprowadzono nowy typ danych "text". Używany jest teraz do przechowywania komunikatów ostrzeżeń, tekstów i wartości historii logów. Należy zauważyć, że typ ten nie jest obsługiwany przez parametr "filter" metody get.

** Udoskonalona walidacja **

Udoskonalono wejście API, zwiększając restrykcyjność w większości metod.

** Jeszcze więcej zmian i poprawek **

Pełną listę zmian i poprawek można zobaczyć w liście zmian API.

5.27 Inne

** Pełny 64-bitowy zakres dla ID obiektów **

Teraz w konfiguracji pojedynczej, nie rozproszonej Zabbix korzysta z liczb 64-bitowych ze znakiem do przechowywania identyfikatorów obiektów. Zatem najwyższy dostępny numer obiektu jednego typu to 263-1.

** Dodatkowe typy usług w warunkach akcji wykrywania sieci **

W konfiguracji akcji wykrywania sieci dostępne są teraz warunki dla typów usług HTTPS i telnet.

** Usunięto powielające się indeksy w schemacie bazy danych MySQL Zabbix **

W wielu tabelach bazy danych MySQL usunięto nadmiarowe indeksy. Powinno to zwiększyć wydajność oraz zredukować rozmiar bazy MySQL w następujących przypadkach:

  • węzły potomne w trybie rozproszonym
  • przetwarzanie danych kolekcji wartości proxy Zabbix, wykrywania sieci oraz automatycznej rejestracji aktywnych agentów

Dodano indeksy na kolumnach tabel potomnych posiadających klucze obce

Indeksy takie są automatycznie tworzone w MySQL, teraz żeby zwiększyć wydajność serwera Zabbix oraz operacji interfejsu użytkownika tworzone są również w bazach PostgreSQL, Oracle, DB2.

Biblioteka łączona dynamicznie z funkcjonalnością sendera Zabbix dla Windows

Na platformach Windows dostępna jest biblioteka łączona dynamicznie, posiadająca podstawowe funkcjonalności sendera Zabbix. Pozwala ona wysyłać dane do serwera/proxy bez uruchamiania procesu sendera Zabbix. Szczegółowe informacje można obejrzeć w dokumentacji.

Zmiany stanu wyjścia programu Zabbix send

Program Zabbix send zakończy ze stanem 0 tylko wtedy, gdy wszystkie wartości zostaną wysłane i poprawnie przetworzone. Jeżeli przetwarzanie przynajmniej jednej wartości się nie powiedzie, zwróci stan 2. Jeżeli wysyłanie się nie powiedzie zwróci stan 1. Dodatkowo jeżeli nie zostały podane żadne argumenty lub nie określono serwera, zwróci stan 1, a dla opcji -h i -V stan będzie równy 0 (przed Zabbix 2.2.0 stan wyjścia w takiej sytuacji był równy 255).

Udoskonalone raportowanie błędów w interfejsie użytkownika

Poprzednio, gdy host SNMP, JMX i IPMI stawał się niedostępny, komunikat błędu wyzwalacza mógł zawierać odwołanie do agenta Zabbix. Jako że agent Zabbix w takich przypadkach nie jest wykorzystywany, w Zabbix 2.2 komunikaty te odwołują się bezpośrednio do agentów SNMP, JMX i IPMI.

Bardziej aktualna pomoc dla kluczy pozycji wbudowanych

Dane pomocy dla kluczy pozycji wbudowanych powinny być bardziej aktualne - poprzednio były zapisywane do bazy jedynie przy aktualizacjach do głównych wersji. Począwszy od wersji 2.2 przechowywane są w interfejsie użytkownika a każda aktualizacja interfejsu użytkownika daje udostępnia informacje o nowych lub udoskonalonych pozycjach.