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.

8 Uwagi do aktualizacji 2.2.0

Zmiany wymagań

  • Minimalna wspierana wersja PHP zmieniona z 5.1.6 na 5.3.0
  • Minimalna wspierana wersja MySQL zmieniona z 5.0.0 na 5.0.3
  • Zamiast rozszerzenia PHP "mysl" wymagane jest "mysqli"
  • Akceptowalny limit danych użycia protokołu Zabbix zmieniono z 128MB na 64MB.

Nowa procedura aktualizacji

Nie będzie już skryptów aktualizacji SQL - aktualizacja bazy danych jest wykonywana przez serwer/proxy Zabbix.

Aktualizacja bazy danych jest automatyczna - należy się upewnić, że istnieje kopia zapasowa bazy danych przed uruchomieniem nowych binariów Zabbix.

Automatyczna aktualizacja bazy danych dla SQLite nie jest wspierana.

Zmiany uprawnień

Od wersji Zabbix 2.2 prawa do "Zapisu i odczytu" są ważniejsze od praw do "Odczytu". 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". Teraz będzie do "Zapisu i odczytu".

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.

64-bitowe identyfikatory 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.

Zmiany pozycji monitorowania baz danych

Przedtem wszystkie parametry ODBC były przechowywane w dodatkowym polu pozycji, w następującym formacie:

DSN=<nazwa źródła danych>
       user=<nazwa użytkownika>
       password=<hasło>
       sql=<zapytanie>

W Zabbix 2.2.0, przechowywany parametr ODBC zmienił się:

  • <nazwa źródła danych> jest przechowywana jako drugi parametr w kluczu pozycji
  • <nazwa użytkownika> jest przechowywana w polu username pozycji
  • <hasło> jest przechowywane w polu password pozycji
  • <zapytanie> jest przechowywane w polu parametru dodatkowego pozycji

Aktualizacja bazy danych automatycznie przekonwertuje monitorowane pozycje na nowy format. Wyjątkiem jest sytuacja, gdy pozycje nie będą zgodne z następującymi ograniczeniami:

  • Długość <nazwy źródła danych> plus długość klucza pozycji musi być mniejsza niż 255 znaków.
  • Długość <nazwy użytkownika> musi być mniejsza niż 65 bajtów
  • Długość <hasła> musi być mniejsza niż 65 bajtów

Jeżeli pozycja nie będzie skonwertowana z powodu tych ograniczeń, pozostanie bez zmian, a do pliku logu trafi ostrzeżenie. Pozycje takie należy skonwertować ręcznie (skracają problematyczne parametry):

  1. dodać <nazwę źródła danych> do klucza pozycji, jako drugi parametr
  2. przenieść <nazwę użytkownika>, <hasło> odpowiednio do pól Username, Password
  3. pozostawić w polu <SQL query> tylko <zapytanie>

Przykład komunikatu ostrzeżenia konwersji pozycji:

 25208:20130807:103348.467 Failed to convert host "dbmonitor" db monitoring item because key "db.odbc.select[query4__123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789]" is too long. See upgrade notes for manual database monitor item conversion.
        25208:20130807:103348.467 Failed to convert host "dbmonitor" db monitoring item because ODBC username "123456789_123456789_123456789_123456789_123456789_123456789_123456789_" is too long. See upgrade notes for manual database monitor item conversion.
        25208:20130807:103348.467 Failed to convert host "dbmonitor" db monitoring item because ODBC password "123456789_123456789_123456789_123456789_123456789_123456789_123456789_" is too long. See upgrade notes for manual database monitor item conversion.

Usunięto wsparcie dla iODBC

Zabbix wspierał zarówno unixODBC jak i iODBC przy bezpośrednim monitorowaniu baz danych. iODBC nie jest już utrzymywany i nie znamy użytkowników używających go w Zabbix, dlatego wsparcie dla iODBC zostało w wersji 2.2 usunięte. Do monitorowania baz danych należy używać unixODBC.

Zmiany sprawdzeń wewnętrznych

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

Sprawdzenia wewnętrzne hostów monitorowanych przez proxy są przetwarzane teraz przez proxy.

Pusty ciąg zwracany zamiast EOF

Kilka pozycji, które przy błędach zwracały EOF - vfs.file.contents, vfs.file.regexp, web.page.get i web.page.regexp - teraz zwracają pusty ciąg.

Zmiany pozycji logu zdarzeń Windows

W pozycjach logu zdarzeń Windows, opcja filtra źródło wspiera teraz wyrażenia regularne.

Aktualizacja bazy danych automatycznie skonwertuje czwarty parametr klucza pozycji eventlog na wyrażenie regularne (dodając symbole ^ i $ na początku i końcu czwartego parametru dla każdego istniejącego klucza pozycji eventlog).

Sprawdzenia opóźnienia i powtórzeń dla SNMP

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ń).

Zmiany w walidacji parametrów pozycji

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.

Od wersji 2.2 agent Zabbix będzie zwracał ZBX_NOTSUPPORTED w przypadku błędnych wartości timeout lub count dla sprawdzenia net.dns. Poprzednio nie było walidacji i używana była wartość domyślna lub zero. Od teraz wartość zero będzie traktowana również jako błąd.

Zmiany w pozycji system.uname

Przed wersją Zabbix 2.2, wartość system.uname była pobierana przez wywołanie "uname -a" na systemach Unix. Od wersji Zabbix 2.2, wartość ta jest pobierana przy użyciu systemowego wywołania uname(). Zatem, wartość tego parametru po aktualizacji może się zmienić, i może już nie zawierać dodatkowych informacji jakie dostarczało "uname -a".

Zmiany w makrach {EVENT.*}

Makra EVENT.*, takie jak {EVENT.ID}, {EVENT.TIME}, {EVENT.DATE}, {EVENT.AGE}, {EVENT.ACK.HISTORY}, {EVENT.ACK.STATUS}, począwszy od wersji Zabbix 2.2 zaczną się zachowywać inaczej.

Poprzednio, użyte w komunikatach odtwarzania, zawierały informacje o zdarzeniach odtwarzania. Od Zabbix 2.2 zwracają informacje o oryginalnym zdarzeniu dla problemu.

Do informacji o zdarzeniu odtwarzania przygotowano oddzielne makra odtwarzania (EVENT.RECOVERY.* ) - {EVENT.RECOVERY.ID}, {EVENT.RECOVERY.TIME}, itd. Więcej informacji można uzyskać w Makra wspierane w lokalizacjach.

Zmiany w makrze {ESC.HISTORY}

Poprzednio, jeżeli był generowany krok eskalacji dla wielu komunikatów, wartość makra {ESC.HISTORY} była różna dla różnych odbiorców. Teraz {ESC.HISTORY} tworzy taki sam komunikat dla jednego kroku eskalacji, przy powiadomieniach dla wielu odbiorców.

Testowanie wyrażeń regularnych

Udoskonalono logikę wyświetlania wyników testowania wyrażeń regularnych. Wyniki pokazywane są po sprawdzeniu warunków, a nie przed.

Zmiany API

Wersja API została podbita do 2.2.0 i jest zgodna z wersją Zabbix.

Więcej danych wysyłanych do 'Ostatnie dane'

Strona Ostatnie dane wysyła dane dla wszystkich wpisów, również zwiniętych. W niektórych przypadkach może to znacząco zwiększyć wielkość strony.

Zmiany porządkowania

Opcja konfiguracji serwera DisableHousekeeping nie jest już wspierana. Zamiast tego, w interfejsie użytkownika umieszczono odpowiednie kontrolki, w Administracja → Ogólne → Porządkowanie, pozwalając selektywnie włączyć/wyłączyć procesy porządkowania dla wybranych tabel.

Ze względu na zmiany w obsłudze ostatnich przechowywanych wartości pozycji, wartości pozycji z okresem przechowywania historii ustawionym na "0" nie będą wyświetlane na stronach Monitorowanie → Ostatnie dane i Monitorowanie → Przegląd. Dla takich pozycji nie będzie również działać makro {ITEM.LASTVALUE}. Żeby uniknąć niespodzianek okres przechowywania historii dla wszystkich istniejących pozycji zostanie automatycznie zmieniony z "0" na "1".

Porządkowanie domyślnie jest wyłączone po aktualizacji do wersji 2.2. Wymagane zachowanie porządkowania należy włączyć ręcznie.

Walidacja JSON na serwerze

Poprzednio, całkowicie niepoprawny JSON mógł być zaakceptowany przez serwer Zabbix. Od wersji Zabbix 2.2, przeprowadzana jest walidacja składni. jeżeli we własnych niskopoziomowych regułach wykrywania użyto niewłaściwej składni JSON, mogą przestać działać. W takim przypadku należy poprawić własne reguły tak, by zwracały poprawnie sformatowany JSON.

Dodano walidację UTF-8 dla parametrów demonów

Walidacja parametrów konfiguracji demona została zmieniona tak, by uniemożliwić użycie znaków spoza UTF-8.

Weryfikacja wylogowania z sesji

Wylogowanie wymaga teraz podania poprawnej wartości SID w URL.

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. Teraz wyzwalacze bez zdarzeń są wyświetlane we wszystkich tych trzech miejscach.

Mechanizm zapamiętywania pozycji ramek tablicy

Po aktualizacji do 2.2, układ tablicy zostanie stracony. Dlatego, że pozycje ramek tablicy, poprzednio zapisywane w ciasteczkach, są teraz zapisywane w bazie danych.

Po aktualizacja przeglądarka dalej będzie miała ciasteczka tablicy, ale nigdzie nie będą one używane, ponieważ nowa wersja ich nie obsługuje.

Zmienione odpowiedzi trappera na wysyłanie danych

Przed Zabbix 2.2.0, odpowiedź trappera na wartości wysyłane przez aktywnego agenta/program send zawierały pole informacyjne w następującym formacie:

Processed <N> Failed <N> Total <N> Seconds spent <N>

Począwszy od Zabbix 2.2.0, formatowanie zostało zmienione na bardziej czytelne:

processed: <N>; failed: <N>; total: <N>; seconds spent: <N>

Zmiany stanu wyjścia programu Zabbix send

Począwszy od Zabbix 2.2.0 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).

Dodatkowo podczas czytania danych z pliku (-i) lub pracy w czasie rzeczywistym (-r) Zabbix send wyjdzie natychmiast z odpowiednim kodem, w przypadku błędu parsowania lub wysyłania danej linii.

Inny porządek kolumn przy Oracle

Porządek dla kolumn tabeli alerts table będzie się różnił po aktualizacji w porównaniu do świeżej instalacji (tylko Oracle). Wynika to z niemożliwości zmiany typu kolumny z varchar na nclob i wstawienia kolumny w określonym miejscu w Oracle. Nie ma to żadnego wpływu na działanie.

Definicje pomocy pozycji przeniesione do kodu PHP

Standardowe klucze pozycji, które poprzednio trzymane były w tabeli help_items są aktualnie zdefiniowane w klasie PHP CHelpItems w frontends/php/include/classes/items/CHelpItems.php. Tabela help_items została usunięta.

Poprawki bezpieczeństwa demona

Teraz serwer Zabbix poprawnie włącza weryfikację SSL hosta podczas używania usługi Ez Texting do wysyłania powiadomień.

Zmiany kolejek

Ponieważ kolejka (Administracja → Kolejka) pobierana jest teraz bezpośrednio z serwera, dostępna jest jedynie wtedy, gdy serwer Zabbix działa i interfejs użytkownika ma bezpośredni dostęp do serwera Zabbix.

Zmiany logowania

Przed Zabbix 2.2.0, serwer i proxy logowały komunikaty o dostępności poszczególnych typów testów na hoście w następującym formacie:

SNMP item [ifInOctets.3] on host [gateway] failed: first network error, wait for 15 seconds

Począwszy od Zabbix 2.2.0, typ specyfikacji dla testów SNMP, IPMI i JMX zawiera dodatkowe słowo "agent":

SNMP agent item [ifInOctets.3] on host [gateway] failed: first network error, wait for 15 seconds