See www.zabbix.com for the official Zabbix site.
Docs/protocols
Zabbix protocols
These pages will attempt to document the different Zabbix protocols in existence.
"N/A" means the protocol/product was not available at that Zabbix version.
| Protocol | 1.1 | 1.4 | 1.6 | 1.8 | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 |
|---|---|---|---|---|---|---|---|---|---|---|
| Zabbix agent | 1.1 | 1.4 | 1.6 | 1.8 | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 |
| Zabbix sender | 1.8 | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 | |||
| Zabbix proxy | N/A | N/A | 1.6 | 1.8 | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 |
| Zabbix Java gateway | N/A | N/A | N/A | N/A | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 |
| Zabbix global scripts | N/A | N/A | [1] | 2.0 | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 | |
| Zabbix queue | N/A | N/A | N/A | N/A | N/A | 2.2 | 2.4 | 3.0 | 3.2 | 3.4 |
Protocol changes
It would be great to have all protocol / data exchange changes properly documented - until that level is reached, this section will attempt to document at least some of the changes.
Zabbix 3.4
Zabbix proxy
- 'host availability', 'history data', 'discovery data' and 'auto registration' requests are merged into one 'proxy data' request (ZBXNEXT-1804)
- A list of tasks to execute are exchanged with 'tasks' parameter in server response to 'proxy data' request and in proxy 'proxy data' request (ZBXNEXT-936)
Zabbix server
- global script execution requires an additional parameter 'sid' (ZBX-9425)
Zabbix Java gateway
- according to this comment, Java gateway protocol was changed in ZBXNEXT-1274
Zabbix 3.0
Zabbix proxy
Encryption-related host parameters are included by the server in the proxy configuration data
Zabbix 2.4
Zabbix proxy
- 'bulk' parameter is sent for host SNMP interfaces (ZBXNEXT-98)
- web scenarios have SSL parameters sent
- web scenarios have custom headers, redirect following and maybe some more parameters sent
- some existing items are not sent to the proxy anymore (for example, lastaccess item)
- some new items are not sent to the proxy (for example, host maintenance internal item)
-
items.filteris not sent for items anymore (ZBXNEXT-581)
Zabbix 2.2
Zabbix agent
Active agent sends metadata, if any, in the active check requests. (ZBXNEXT-1726)
Zabbix 2.0
Zabbix agent
If agent has a non-default IP or port set, they are included in the active check requests. (ZBXNEXT-558)
JSON formatting
If JSON is not in a user-readable format, it can be reformatted. Various options are listed below.
Online
Visit jsonlint.com.
Perl
json_pp (pure Perl) or json_xs (with a C module). The latter is included in JSON::XS Perl module.
$ zabbix_get -s 127.0.0.1 -k net.if.discovery | json_pp
$ zabbix_get -s 127.0.0.1 -k net.if.discovery | json_xs
Python
(note - doesn't work correctly with non-ASCII utf8 data)
$ zabbix_get -s 127.0.0.1 -k net.if.discovery | python -mjson.tool
Note that this method sorts the keys.
C
Yajl. Depending on the distribution, one would install package called yajl or yajl-tools, which would provide json_reformat utility.
$ zabbix_get -s 127.0.0.1 -k net.if.discovery | json_reformat