Codifica dei valori restituiti
Il server Zabbix si aspetta che ogni valore di testo restituito sia codificato in UTF8. Questo vale per qualsiasi tipo di controllo: Zabbix agent, SSH, Telnet, ecc.
Diversi sistemi/dispositivi monitorati e controlli possono restituire caratteri non ASCII nel valore. In questi casi, quasi tutte le possibili chiavi zabbix contengono un parametro aggiuntivo della chiave item - <encoding>. Questo parametro della chiave è facoltativo, ma deve essere specificato se il valore restituito non è codificato in UTF8 e contiene caratteri non ASCII. In caso contrario, il risultato può essere inatteso e imprevedibile.
Segue una descrizione del comportamento con diversi backend di database in tali casi.
MySQL
Se un valore contiene un carattere non ASCII in una codifica non UTF8, questo
carattere e quelli successivi verranno scartati quando il database memorizza
questo valore. Nessun messaggio di avviso verrà scritto nel file
zabbix_server.log.
Rilevante almeno per la versione 5.1.61 di MySQL.
PostgreSQL
Se un valore contiene un carattere non ASCII in una codifica non UTF8, ciò
porterà al fallimento della query SQL (PGRES_FATAL_ERROR:ERROR invalid byte
sequence for encoding) e i dati non verranno memorizzati. Un messaggio di avviso appropriato
verrà scritto nel file zabbix_server.log.
Rilevante almeno per la versione 9.1.3 di PostgreSQL.