| Programming language |
C |
Go with some parts in C |
| Daemonization |
yes |
by systemd only (yes on Windows) |
| Supported extensions |
Custom loadable modules in C. |
Custom plugins in Go. |
| Requirements |
|
|
| Supported platforms |
Linux, IBM AIX, FreeBSD, NetBSD, OpenBSD, HP-UX, Mac OS X, Solaris: 9, 10, 11, Windows: all desktop and server versions since XP |
Linux, Windows: all desktop and server versions, on which an up-to-date supported Go version can be installed. |
| Supported crypto libraries |
GnuTLS 3.1.18 and newer OpenSSL 1.0.1, 1.0.2, 1.1.0, 1.1.1, 3.0.x LibreSSL - tested with versions 2.7.4, 2.8.2 (certain limitations apply, see the Encryption page for details). |
Linux: OpenSSL 1.0.1 and later. MS Windows: OpenSSL 1.1.1 or later. The OpenSSL library must have PSK support enabled. LibreSSL is not supported. |
| Monitoring processes |
|
|
| Processes |
A separate active check process for each server/proxy record. |
Single process with automatically created threads. The maximum number of threads is determined by the GOMAXPROCS environment variable. |
| Metrics |
UNIX: see a list of supported items.
Windows: see a list of additional Windows-specific items. |
UNIX: All metrics supported by Zabbix agent. Additionally, the agent 2 provides Zabbix-native monitoring solution for: Docker, Memcached, MySQL, PostgreSQL, Redis, systemd, and other monitoring targets - see a full list of agent 2 specific items.
Windows: All metrics supported by Zabbix agent, and also net.tcp.service* checks of HTTPS, LDAP. Additionally, the agent 2 provides Zabbix-native monitoring solution for: PostgreSQL, Redis. |
| Concurrency |
Active checks for single server are executed sequentially. |
Checks from different plugins or multiple checks within one plugin can be executed concurrently. |
| Third-party traps |
no |
yes |
| Additional features |
|
|
| Persistent storage |
no |
yes |
| Persistent files for log*[] metrics |
yes (only on Unix) |
no |
| Log data upload |
Can be performed during log gathering to free the buffer. |
Log gathering is stopped when the buffer is full, therefore the BufferSize parameter must be at least MaxLinesPerSecond x 2. |
| Changes user at runtime |
yes (Unix-like systems only) |
no (controlled by systemd) |
| User-configurable ciphersuites |
yes |
no |