6. Кодировка получаемых значений

Zabbix сервер ожидает, что каждое получаемое текстовое значение будет в кодировке UTF8. Это относится к любому типу проверок: zabbix агент, ssh, telnet и т.д.

Различные системы/устройства и проверки могут возвращать в значениях non-ASCII символы. Для таких случаев, почти все доступные в Zabbix ключи имеют дополнительный параметр ключа элемента данных - <кодировка>. Этот параметр ключа необязателен, но он должен быть указан, если получаемое значение не в кодировке UTF8 и содержит non-ASCII символы. В противном случае результат может быть неожиданным и непредсказуемым.

Описание поведения различных баз данных в этих случаях представлено ниже.

MySQL

Если значение содержит non-ASCII символ в не UTF8 кодировке - этот символ и следующий за ним символ будут отброшены при записи этого значения базой данных. Никакие предупреждающие сообщения не записываются в zabbix_server.log.
Такое поведение соответствует по крайней мере MySQL версии 5.1.61

PostgreSQL

Если значение содержит non-ASCII символ в не UTF8 кодировке - это приведёт к ошибке в SQL запросе (PGRES_FATAL_ERROR:ERROR invalid byte sequence for encoding), и данные не будут записаны. Соответствующее сообщение с предупреждением будет записано в zabbix_server.log.
Такое поведение соответствует по крайней мере PostgreSQL версии 9.1.3