It is now possible to make some internal metrics of Zabbix server and proxy accessible remotely by another Zabbix instance or a third party tool. This can be useful so that supporters/service providers can monitor their client Zabbix servers/proxies remotely or, in organizations where Zabbix is not the main monitoring tool, that Zabbix internal metrics can be monitored by a third party system in an umbrella-monitoring setup.
Zabbix internal stats are exposed to a configurable set of addresses listed in the new 'StatsAllowedIP' server/proxy parameter. Requests will be accepted only from these addresses.
To configure querying of internal stats on another Zabbix instance, you may use two new items:
zabbix[stats,<ip>,<port>]internal item - for direct remote queries of Zabbix server/proxy. <ip> and <port> are used to identify the target instance.
zabbix.stats[<ip>,<port>]agent item - for agent-based remote queries of Zabbix server/proxy. <ip> and <port> are used to identify the target instance.
To make sure that the target instance allows querying it by the external instance, list the address of the external instance in the 'StatsAllowedIP' parameter on the target instance.
These items gather statistics in bulk and return a JSON which can be used as the master item for dependent items that get their data from. A selected set of internal metrics (i.e. not all) is returned by either of these two items.
There are also another two new items allowing to specifically remotely query internal queue stats:
zabbix[stats,<ip>,<port>,queue,<from>,<to>]internal item - for direct internal queue queries to remote Zabbix server/proxy
zabbix.stats[<ip>,<port>,queue,<from>,<to>]agent item - for agent-based internal queue queries to remote Zabbix server/proxy
For more details, see:
New templates are also available for remote Zabbix server or proxy internal metric monitoring:
Note that in order to use a template for remote monitoring of multiple external instances, a separate host is required for each external instance monitoring.