6 Kodowanie zwracanych wartości
Serwer Zabbix oczekuje, że każda zwracana wartość tekstowa będzie kodowana w UTF8. Dotyczy to wszystkich rodzajów sprawdzeń: agenta Zabbix, ssh, telnet itp.
Różne monitorowane systemy/urządzenia i sprawdzenia mogą zwracać znaki nie-ASCII w wartości. Dla takich przypadków prawie wszystkie możliwe klucze Zabbix zawierają dodatkowy parametr klucza pozycji - <encoding>. Ten parametr klucza jest opcjonalny, ale powinien być określony, jeśli zwracana wartość nie jest w kodowaniu UTF8 i zawiera znaki nie-ASCII. W przeciwnym razie wynik może być nieoczekiwany i nieprzewidywalny.
Poniżej przedstawiono opis zachowania w różnych systemach baz danych w takich przypadkach.
MySQL
Jeśli wartość zawiera znak nie-ASCII w kodowaniu innym niż UTF8 - ten
znak i następne zostaną odrzucone, gdy baza danych przechowuje
tę wartość. Nie zostaną zapisane żadne komunikaty typu ostrzeżenie w
zabbix_server.log.
Dotyczy co najmniej wersji MySQL 5.1.61
PostgreSQL
Jeśli wartość zawiera znak nie-ASCII w kodowaniu innym niż UTF8 - spowoduje
to nieudane zapytanie SQL (PGRES_FATAL_ERROR:ERROR invalid byte
sequence for encoding) i dane nie zostaną przechowywane. Odpowiedni
komunikat typu ostrzeżenie zostanie zapisany w zabbix_server.log.
Dotyczy co najmniej wersji PostgreSQL 9.1.3