3 Kodierung zurückgegebener Werte
Der Zabbix Server erwartet, dass jeder zurückgegebene Textwert in der UTF8-Kodierung vorliegt. Dies gilt für jede Art von Prüfungen: Zabbix Agent, SSH, Telnet usw.
Unterschiedliche überwachte Systeme/Geräte und Prüfungen können nicht-ASCII-Zeichen im Wert zurückgeben. Für solche Fälle enthalten fast alle zabbix-Schlüssel einen zusätzlichen Datenpunkt-Schlüsselparameter - <encoding>. Dieser Schlüsselparameter ist optional, sollte jedoch angegeben werden, wenn der zurückgegebene Wert nicht in der UTF8-Kodierung vorliegt und nicht-ASCII-Zeichen enthält. Andernfalls kann das Ergebnis unerwartet und unvorhersehbar sein.
Im Folgenden wird das Verhalten mit verschiedenen Datenbank-Backends in solchen Fällen beschrieben.
MySQL
Wenn ein Wert in einer Nicht-UTF8-Kodierung ein Nicht-ASCII-Zeichen enthält, werden dieses Zeichen und die folgenden Zeichen verworfen, wenn die Datenbank diesen Wert speichert. Es werden keine Warnmeldungen in die
zabbix_server.log geschrieben.
Gilt mindestens für MySQL Version 5.1.61.
PostgreSQL
Wenn ein Wert in einer Nicht-UTF8-Kodierung ein Nicht-ASCII-Zeichen enthält, führt dies zu einer fehlgeschlagenen SQL-Abfrage (PGRES_FATAL_ERROR:ERROR invalid byte sequence for encoding), und die Daten werden nicht gespeichert. Eine entsprechende Warnmeldung wird in die Datei zabbix_server.log geschrieben.
Gilt mindestens für PostgreSQL Version 9.1.3.