4 Kodowanie zwracanych wartości

Serwer Zabbix oczekuje, że każda zwracana wartość tekstowa będzie w kodowaniu UTF8. Dotyczy to wszystkich typów kontroli: Zabbix agent, SSH, Telnet itd.

Różne monitorowane systemy/urządzenia i kontrole mogą zwracać w wartości znaki spoza ASCII. W takich przypadkach prawie wszystkie możliwe klucze zabbix zawierają dodatkowy parametr klucza pozycji - <encoding>. Ten parametr klucza jest opcjonalny, ale należy go określić, jeśli zwracana wartość nie jest w kodowaniu UTF8 i zawiera znaki spoza ASCII. W przeciwnym razie wynik może być nieoczekiwany i nieprzewidywalny.

Poniżej znajduje się opis zachowania w takich przypadkach dla różnych backendów baz danych.

MySQL

Jeśli wartość zawiera znak spoza ASCII w kodowaniu innym niż UTF8, ten znak oraz kolejne zostaną odrzucone podczas zapisywania tej wartości w bazie danych. Żadne komunikaty ostrzegawcze nie zostaną zapisane w pliku zabbix_server.log.
Dotyczy co najmniej wersji MySQL 5.1.61

PostgreSQL

Jeśli wartość zawiera znak spoza ASCII w kodowaniu innym niż UTF8, doprowadzi to do nieudanego zapytania SQL (PGRES_FATAL_ERROR:ERROR invalid byte sequence for encoding), a dane nie zostaną zapisane. Odpowiedni komunikat ostrzegawczy zostanie zapisany w pliku zabbix_server.log.
Dotyczy co najmniej PostgreSQL w wersji 9.1.3