1 Zabbix агент

Обзор

Эти проверки используют общение с Zabbix агентом для сбора данных.

Существуют пассивные и активные проверки. При настройке элемента данных, вы можете выбрать требуемый тип:

  • Zabbix агент - для пассивных проверок
  • Zabbix агент (активный) - для активных проверок

Поддерживаемые ключи элементов данных

В таблице приводится подробная информация о ключах элементов данных, которые вы можете использовать элементами данных Zabbix агента.

Смотрите также:

Key
Description Return value Parameters Comments
agent.hostname
Agent host name. String Returns:
As passive check - the name of the first host listed in the Hostname parameter of the agent configuration file;
As active check - the name of the current hostname.
agent.ping
Agent availability check. Nothing - unavailable

1 - available
Use the nodata() trigger function to check for host unavailability.
agent.variant
Variant of Zabbix agent (Zabbix agent or Zabbix agent 2). Integer Example of returned value:
1 - Zabbix agent
2 - Zabbix agent 2

Supported since Zabbix 5.4.8.
agent.version
Version of Zabbix agent. String Example of returned value:
1.8.2
kernel.maxfiles
Maximum number of opened files supported by OS. Integer
kernel.maxproc
Maximum number of processes supported by OS. Integer
log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent_dir>]
Log file monitoring. Log file - full path and name of log file
regexp - regular expression describing the required pattern
encoding - code page identifier
maxlines - maximum number of new lines per second the agent will send to Zabbix server or proxy. This parameter overrides the value of 'MaxLinesPerSecond' in zabbix_agentd.conf
mode (since version 2.0)- possible values:
all (default), skip - skip processing of older data (affects only newly created items).
output (since version 2.2) - an optional output formatting template. The \0 escape sequence is replaced with the matched part of text (from the first character where match begins until the character where match ends) while an \N (where N=1...9) escape sequence is replaced with Nth matched group (or an empty string if the N exceeds the number of captured groups).
maxdelay (since version 3.2) - maximum delay in seconds. Type: float. Values: 0 - (default) never ignore log file lines; > 0.0 - ignore older lines in order to get the most recent lines analyzed within "maxdelay" seconds. Read the maxdelay notes before using it!
options (since version 4.4.7) - additional options:
mtime-noreread - non-unique records, reread only if the file size changes (ignore modification time change). (This parameter is deprecated since 5.0.2, because now mtime is ignored.
persistent_dir (since versions 5.0.18, 5.4.9, only in zabbix_agentd on Unix systems; not supported in Agent2) - absolute pathname of directory where to store persistent files. See also additional notes on persistent files.
The item must be configured as an active check.
If file is missing or permissions do not allow access, item turns unsupported.

If output is left empty - the whole line containing the matched text is returned. Note that all global regular expression types except 'Result is TRUE' always return the whole matched line and the output parameter is ignored.

Content extraction using the output parameter takes place on the agent.

Examples:
=> log[/var/log/syslog]
=> log[/var/log/syslog,error]
=> log[/home/zabbix/logs/logfile,,,100]

Using output parameter for extracting a number from log record:
=> log[/app1/app.log,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1] → will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send only '6080' to server. Because a numeric value is being sent, the "Type of information" for this item can be set to "Numeric (unsigned)" and the value can be used in graphs, triggers etc.

Using output parameter for rewriting log record before sending to server:
=> log[/app1/app.log,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"] → will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send a modified record "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08" to server.

See also additional information on log monitoring.
log.count[file,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>,<persistent_dir>]
Count of matched lines in log file monitoring. Integer file - full path and name of log file
regexp - regular expression describing the required pattern
encoding - code page identifier
maxproclines - maximum number of new lines per second the agent will analyze (cannot exceed 10000). Default value is 10*'MaxLinesPerSecond' in zabbix_agentd.conf.
mode - possible values:
all (default), skip - skip processing of older data (affects only newly created items).
maxdelay - maximum delay in seconds. Type: float. Values: 0 - (default) never ignore log file lines; > 0.0 - ignore older lines in order to get the most recent lines analyzed within "maxdelay" seconds. Read the maxdelay notes before using it!
options (since version 4.4.7) - additional options:
mtime-noreread - non-unique records, reread only if the file size changes (ignore modification time change). (This parameter is deprecated since 5.0.2, because now mtime is ignored.)
persistent_dir (since versions 5.0.18, 5.4.9, only in zabbix_agentd on Unix systems; not supported in Agent2) - absolute pathname of directory where to store persistent files. See also additional notes on persistent files.
The item must be configured as an active check.
If file is missing or permissions do not allow access, item turns unsupported.

See also additional information on log monitoring.

This item is not supported for Windows Event Log.

Supported since Zabbix 3.2.0.
logrt[file_regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent_dir>]
Log file monitoring with log rotation support. Log file_regexp - absolute path to file and the file name described by a regular expression. Note that only the file name is a regular expression
regexp - regular expression describing the required content pattern
encoding - code page identifier
maxlines - maximum number of new lines per second the agent will send to Zabbix server or proxy. This parameter overrides the value of 'MaxLinesPerSecond' in zabbix_agentd.conf
mode (since version 2.0) - possible values:
all (default), skip - skip processing of older data (affects only newly created items).
output (since version 2.2) - an optional output formatting template. The \0 escape sequence is replaced with the matched part of text (from the first character where match begins until the character where match ends) while an \N (where N=1...9) escape sequence is replaced with Nth matched group (or an empty string if the N exceeds the number of captured groups).
maxdelay (since version 3.2) - maximum delay in seconds. Type: float. Values: 0 - (default) never ignore log file lines; > 0.0 - ignore older lines in order to get the most recent lines analyzed within "maxdelay" seconds. Read the maxdelay notes before using it!
options (since version 4.0; mtime-reread, mtime-noreread options since 4.4.7) - type of log file rotation and other options. Possible values:
rotate (default),
copytruncate - note that copytruncate cannot be used together with maxdelay. In this case maxdelay must be 0 or not specified; see copytruncate notes,
mtime-reread - non-unique records, reread if modification time or size changes (default),
mtime-noreread - non-unique records, reread only if the size changes (ignore modification time change).
persistent_dir (since versions 5.0.18, 5.4.9, only in zabbix_agentd on Unix systems; not supported in Agent2) - absolute pathname of directory where to store persistent files. See also additional notes on persistent files.
The item must be configured as an active check.
Log rotation is based on the last modification time of files.

Note that logrt is designed to work with one currently active log file, with several other matching inactive files rotated. If, for example, a directory has many active log files, a separate logrt item should be created for each one. Otherwise if one logrt item picks up too many files it may lead to exhausted memory and a crash of monitoring.

If output is left empty - the whole line containing the matched text is returned. Note that all global regular expression types except 'Result is TRUE' always return the whole matched line and the output parameter is ignored.

Content extraction using the output parameter takes place on the agent.

Examples:
=> logrt["/home/zabbix/logs/^logfile[0-9]{1,3}$",,,100] → will match a file like "logfile1" (will not match ".logfile1")
=> logrt["/home/user/^logfile_.*_[0-9]{1,3}$","pattern_to_match","UTF-8",100] → will collect data from files such "logfile_abc_1" or "logfile__001".

Using output parameter for extracting a number from log record:
=> logrt[/app1/^test.*log$,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1] → will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send only '6080' to server. Because a numeric value is being sent, the "Type of information" for this item can be set to "Numeric (unsigned)" and the value can be used in graphs, triggers etc.

Using output parameter for rewriting log record before sending to server:
=> logrt[/app1/^test.*log$,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"] → will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send a modified record "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08" to server.

See also additional information on log monitoring.
logrt.count[file_regexp,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>,<persistent_dir>]
Count of matched lines in log file monitoring with log rotation support. Integer file_regexp - absolute path to file and regular expression describing the file name pattern
regexp - regular expression describing the required content pattern
encoding - code page identifier
maxproclines - maximum number of new lines per second the agent will analyze (cannot exceed 10000). Default value is 10*'MaxLinesPerSecond' in zabbix_agentd.conf.
mode - possible values:
all (default), skip - skip processing of older data (affects only newly created items).
maxdelay - maximum delay in seconds. Type: float. Values: 0 - (default) never ignore log file lines; > 0.0 - ignore older lines in order to get the most recent lines analyzed within "maxdelay" seconds. Read the maxdelay notes before using it!
options (since version 4.0; mtime-reread, mtime-noreread options since 4.4.7) - type of log file rotation and other options. Possible values:
rotate (default),
copytruncate - note that copytruncate cannot be used together with maxdelay. In this case maxdelay must be 0 or not specified; see copytruncate notes,
mtime-reread - non-unique records, reread if modification time or size changes (default),
mtime-noreread - non-unique records, reread only if the size changes (ignore modification time change).
persistent_dir (since versions 5.0.18, 5.4.9, only in zabbix_agentd on Unix systems; not supported in Agent2) - absolute pathname of directory where to store persistent files. See also additional notes on persistent files.
The item must be configured as an active check.
Log rotation is based on the last modification time of files.

See also additional information on log monitoring.

This item is not supported for Windows Event Log.

Supported since Zabbix 3.2.0.
modbus.get[endpoint,<slave id>,<function>,<address>,<count>,<type>,<endianness>,<offset>]
Reads Modbus data. JSON object endpoint - endpoint defined as protocol://connection_string
slave id - slave ID
function - Modbus function
address - address of first registry, coil or input
count - number of records to read
type - type of data
endianness - endianness configuration
offset - number of registers, starting from 'address', the results of which will be discarded.

See a detailed description of parameters.
Supported since Zabbix 5.2.0.
net.dns[<ip>,name,<type>,<timeout>,<count>,<protocol>]
Checks if DNS service is up. 0 - DNS is down (server did not respond or DNS resolution failed)

1 - DNS is up
ip - IP address of DNS server (leave empty for the default DNS server, ignored on Windows)
name - DNS name to query
type - record type to be queried (default is SOA)
timeout (ignored on Windows) - timeout for the request in seconds (default is 1 second)
count (ignored on Windows) - number of tries for the request (default is 2)
protocol (since version 3.0) - the protocol used to perform DNS queries: udp (default) or tcp
Example:
=> net.dns[8.8.8.8,example.com,MX,2,1]

The possible values for type are:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (except for Windows), HINFO, MINFO, TXT, SRV

Internationalized domain names are not supported, please use IDNA encoded names instead.

SRV record type is supported since Zabbix agent versions 1.8.6 (Unix) and 2.0.0 (Windows).

Naming before Zabbix 2.0 (still supported): net.tcp.dns
net.dns.record[<ip>,name,<type>,<timeout>,<count>,<protocol>]
Performs a DNS query. Character string with the required type of information ip - IP address of DNS server (leave empty for the default DNS server, ignored on Windows)
name - DNS name to query
type - record type to be queried (default is SOA)
timeout (ignored on Windows) - timeout for the request in seconds (default is 1 second)
count (ignored on Windows) - number of tries for the request (default is 2)
protocol(since version 3.0) - the protocol used to perform DNS queries: udp (default) or tcp
Example:
=> net.dns.record[8.8.8.8,example.com,MX,2,1]

The possible values for type are:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (except for Windows), HINFO, MINFO, TXT, SRV

Internationalized domain names are not supported, please use IDNA encoded names instead.

SRV record type is supported since Zabbix agent versions 1.8.6 (Unix) and 2.0.0 (Windows).

Naming before Zabbix 2.0 (still supported): net.tcp.dns.query
net.if.collisions[if]
Number of out-of-window collisions. Integer if - network interface name
net.if.discovery
List of network interfaces. Used for low-level discovery. JSON object Supported since Zabbix agent version 2.0.

On FreeBSD, OpenBSD and NetBSD supported since Zabbix agent version 2.2.

Some Windows versions (for example, Server 2008) might require the latest updates installed to support non-ASCII characters in interface names.
net.if.in[if,<mode>]
Incoming traffic statistics on network interface. Integer if - network interface name (Unix); network interface full description or IPv4 address; or, if in braces, network interface GUID (Windows)
mode - possible values:
bytes - number of bytes (default)
packets - number of packets
errors - number of errors
dropped - number of dropped packets
overruns (fifo) - the number of FIFO buffer errors
frame - the number of packet framing errors
compressed - the number of compressed packets transmitted or received by the device driver
multicast - the number of multicast frames received by the device driver
On Windows, the item gets values from 64-bit counters if available. 64-bit interface statistic counters were introduced in Windows Vista and Windows Server 2008. If 64-bit counters are not available, the agent uses 32-bit counters.

Multi-byte interface names on Windows are supported.
The network interface GUID as the first parameter on Windows is supported since Zabbix 5.4.5.

Examples:
=> net.if.in[eth0,errors]
=> net.if.in[eth0]

You may obtain network interface descriptions on Windows with net.if.discovery or net.if.list items.

You may use this key with the Change per second preprocessing step in order to get bytes per second statistics.
net.if.out[if,<mode>]
Outgoing traffic statistics on network interface. Integer if - network interface name (Unix); network interface full description or IPv4 address; or, if in braces, network interface GUID (Windows)
mode - possible values:
bytes - number of bytes (default)
packets - number of packets
errors - number of errors
dropped - number of dropped packets
overruns (fifo) - the number of FIFO buffer errors
collisions (colls) - the number of collisions detected on the interface
carrier - the number of carrier losses detected by the device driver
compressed - the number of compressed packets transmitted by the device driver
On Windows, the item gets values from 64-bit counters if available. 64-bit interface statistic counters were introduced in Windows Vista and Windows Server 2008. If 64-bit counters are not available, the agent uses 32-bit counters.

Multi-byte interface names on Windows are supported.
The network interface GUID as the first parameter on Windows is supported since Zabbix 5.4.5.

Examples:
=> net.if.out[eth0,errors]
=> net.if.out[eth0]

You may obtain network interface descriptions on Windows with net.if.discovery or net.if.list items.

You may use this key with the Change per second preprocessing step in order to get bytes per second statistics.
net.if.total[if,<mode>]
Sum of incoming and outgoing traffic statistics on network interface. Integer if - network interface name (Unix); network interface full description or IPv4 address; or, if in braces, network interface GUID (Windows)
mode - possible values:
bytes - number of bytes (default)
packets - number of packets
errors - number of errors
dropped - number of dropped packets
overruns (fifo) - the number of FIFO buffer errors
compressed - the number of compressed packets transmitted or received by the device driver
On Windows, the item gets values from 64-bit counters if available. 64-bit interface statistic counters were introduced in Windows Vista and Windows Server 2008. If 64-bit counters are not available, the agent uses 32-bit counters.

The network interface GUID as the first parameter on Windows is supported since Zabbix 5.4.5.

Examples:
=> net.if.total[eth0,errors]
=> net.if.total[eth0]

You may obtain network interface descriptions on Windows with net.if.discovery or net.if.list items.

You may use this key with the Change per second preprocessing step in order to get bytes per second statistics.

Note that dropped packets are supported only if both net.if.in and net.if.out work for dropped packets on your platform.
net.tcp.listen[port]
Checks if this TCP port is in LISTEN state. 0 - it is not in LISTEN state

1 - it is in LISTEN state
port - TCP port number Example:
=> net.tcp.listen[80]

On Linux supported since Zabbix agent version 1.8.4

Since Zabbix 3.0.0, on Linux kernels 2.6.14 and above, information about listening TCP sockets is obtained from the kernel's NETLINK interface, if possible. Otherwise, the information is retrieved from /proc/net/tcp and /proc/net/tcp6 files.
net.tcp.port[<ip>,port]
Checks if it is possible to make TCP connection to specified port. 0 - cannot connect

1 - can connect
ip - IP or DNS name (default is 127.0.0.1)
port - port number
Example:
=> net.tcp.port[,80] → can be used to test availability of web server running on port 80.

For simple TCP performance testing use net.tcp.service.perf[tcp,<ip>,<port>]

Note that these checks may result in additional messages in system daemon logfiles (SMTP and SSH sessions being logged usually).
net.tcp.service[service,<ip>,<port>]
Checks if service is running and accepting TCP connections. 0 - service is down

1 - service is running
service - either of:
ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (see details)
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)
Example:
=> net.tcp.service[ftp,,45] → can be used to test the availability of FTP server on TCP port 45.

Note that these checks may result in additional messages in system daemon logfiles (SMTP and SSH sessions being logged usually).

Checking of encrypted protocols (like IMAP on port 993 or POP on port 995) is currently not supported. As a workaround, please use net.tcp.port for checks like these.

Checking of LDAP and HTTPS on Windows is only supported by Zabbix agent 2.

Note that the telnet check looks for a login prompt (':' at the end).

See also known issues of checking HTTPS service.

https and telnet services are supported since Zabbix 2.0.
net.tcp.service.perf[service,<ip>,<port>]
Checks performance of TCP service. 0 - service is down

seconds - the number of seconds spent while connecting to the service
service - either of:
ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (see details)
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)
Example:
=> net.tcp.service.perf[ssh] → can be used to test the speed of initial response from SSH server.

Checking of encrypted protocols (like IMAP on port 993 or POP on port 995) is currently not supported. As a workaround, please use net.tcp.service.perf[tcp,<ip>,<port>] for checks like these.

Checking of LDAP and HTTPS on Windows is only supported by Zabbix agent 2.

Note that the telnet check looks for a login prompt (':' at the end).

See also known issues of checking HTTPS service.

https and telnet services are supported since Zabbix 2.0.
net.udp.listen[port]
Checks if this UDP port is in LISTEN state. 0 - it is not in LISTEN state

1 - it is in LISTEN state
port - UDP port number Example:
=> net.udp.listen[68]

On Linux supported since Zabbix agent version 1.8.4
net.udp.service[service,<ip>,<port>]
Checks if service is running and responding to UDP requests. 0 - service is down

1 - service is running
service - ntp (see details)
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)
Example:
=> net.udp.service[ntp,,45] → can be used to test the availability of NTP service on UDP port 45.

This item is supported since Zabbix 3.0.0, but ntp service was available for net.tcp.service[] item in prior versions.
net.udp.service.perf[service,<ip>,<port>]
Checks performance of UDP service. 0 - service is down

seconds - the number of seconds spent waiting for response from the service
service - ntp (see details)
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)
Example:
=> net.udp.service.perf[ntp] → can be used to test response time from NTP service.

This item is supported since Zabbix 3.0.0, but ntp service was available for net.tcp.service[] item in prior versions.
proc.cpu.util[<name>,<user>,<type>,<cmdline>,<mode>,<zone>]
Process CPU utilization percentage. Float name - process name (default is all processes)
user - user name (default is all users)
type - CPU utilization type:
total (default), user, system
cmdline - filter by command line (it is a regular expression)
mode - data gathering mode: avg1 (default), avg5, avg15
zone - target zone: current (default), all. This parameter is supported on Solaris only.
Examples:
=> proc.cpu.util[,root] → CPU utilization of all processes running under the "root" user
=> proc.cpu.util[zabbix_server,zabbix] → CPU utilization of all zabbix_server processes running under the zabbix user

The returned value is based on single CPU core utilization percentage. For example CPU utilization of a process fully using two cores is 200%.

The process CPU utilization data is gathered by a collector which supports the maximum of 1024 unique (by name, user and command line) queries. Queries not accessed during the last 24 hours are removed from the collector.

Note that when setting the zone parameter to current (or default) in case the agent has been compiled on a Solaris without zone support, but running on a newer Solaris where zones are supported, then the agent will return NOTSUPPORTED (the agent cannot limit results to only the current zone). However, all is supported in this case.

This key is supported since Zabbix 3.0.0 and is available on several platforms (see Items supported by platform).
proc.mem[<name>,<user>,<mode>,<cmdline>,<memtype>]
Memory used by process in bytes. Integer - with mode as max, min, sum

Float - with mode as avg
name - process name (default is all processes)
user - user name (default is all users)
mode - possible values:
avg, max, min, sum (default)
cmdline - filter by command line (it is a regular expression)
memtype - type of memory used by process
Examples:
=> proc.mem[,root] → memory used by all processes running under the "root" user
=> proc.mem[zabbix_server,zabbix] → memory used by all zabbix_server processes running under the zabbix user
=> proc.mem[,oracle,max,oracleZABBIX] → memory used by the most memory-hungry process running under oracle having oracleZABBIX in its command line

Note: When several processes use shared memory, the sum of memory used by processes may result in large, unrealistic values.

See notes on selecting processes with name and cmdline parameters (Linux-specific).

When this item is invoked from the command line and contains a command line parameter (e.g. using the agent test mode: zabbix_agentd -t proc.mem[,,,apache2]), one extra process will be counted, as the agent will count itself.

The memtype parameter is supported on several platforms since Zabbix 3.0.0.
proc.num[<name>,<user>,<state>,<cmdline>,<zone>]
The number of processes. Integer name - process name (default is all processes)
user - user name (default is all users)
state (disk and trace options since version 3.4.0) - possible values:
all (default),
disk - uninterruptible sleep,
run - running,
sleep - interruptible sleep,
trace - stopped,
zomb - zombie
cmdline - filter by command line (it is a regular expression)
zone - target zone: current (default), all. This parameter is supported on Solaris only.
Examples:
=> proc.num[,mysql] → number of processes running under the mysql user
=> proc.num[apache2,www-data] → number of apache2 processes running under the www-data user
=> proc.num[,oracle,sleep,oracleZABBIX] → number of processes in sleep state running under oracle having oracleZABBIX in its command line

See notes on selecting processes with name and cmdline parameters (Linux-specific).

On Windows, only the name and user parameters are supported.

When this item is invoked from the command line and contains a command line parameter (e.g. using the agent test mode: zabbix_agentd -t proc.num[,,,apache2]), one extra process will be counted, as the agent will count itself.

Note that when setting the zone parameter to current (or default) in case the agent has been compiled on a Solaris without zone support, but running on a newer Solaris where zones are supported, then the agent will return NOTSUPPORTED (the agent cannot limit results to only the current zone). However, all is supported in this case.
sensor[device,sensor,<mode>]
Hardware sensor reading. Float device - device name
sensor - sensor name
mode - possible values:
avg, max, min (if this parameter is omitted, device and sensor are treated verbatim).
Reads /proc/sys/dev/sensors on Linux 2.4.

Example:
=> sensor[w83781d-i2c-0-2d,temp1]

Prior to Zabbix 1.8.4, the sensor[temp1] format was used.
Reads /sys/class/hwmon on Linux 2.6+.

See a more detailed description of sensor item on Linux.
Reads the hw.sensors MIB on OpenBSD.

Examples:
=> sensor[cpu0,temp0] → temperature of one CPU
=> sensor["cpu[0-2]$",temp,avg] → average temperature of the first three CPU's

Supported on OpenBSD since Zabbix 1.8.4.
system.boottime
System boot time. Integer (Unix timestamp)
system.cpu.discovery
List of detected CPUs/CPU cores. Used for low-level discovery. JSON object Supported on all platforms since 2.4.0.
system.cpu.intr
Device interrupts. Integer
system.cpu.load[<cpu>,<mode>]
CPU load. Float cpu - possible values:
all (default), percpu (since version 2.0; total load divided by online CPU count)
mode - possible values:
avg1 (one-minute average, default), avg5, avg15
Example:
=> system.cpu.load[,avg5].
system.cpu.num[<type>]
Number of CPUs. Integer type - possible values:
online (default), max
Example:
=> system.cpu.num
system.cpu.switches
Count of context switches. Integer
system.cpu.util[<cpu>,<type>,<mode>,<logical_or_physical>]
CPU utilization percentage. Float cpu - <CPU number> or all (default)
type - possible values:
user (default), idle, nice, system (default for Windows), iowait, interrupt, softirq, steal, guest (on Linux kernels 2.6.24 and above), guest_nice (on Linux kernels 2.6.33 and above).
See also platform-specific details for this parameter.
mode - possible values:
avg1 (one-minute average, default), avg5, avg15
logical_or_physical (since version 5.0.3; on AIX only) - possible values: logical (default), physical. This parameter is supported on AIX only.
Example:
=> system.cpu.util[0,user,avg5]

Old naming: system.cpu.idleX, system.cpu.niceX, system.cpu.systemX, system.cpu.userX
system.hostname[<type>, <transform>]
System host name. String type (before version 5.4.7 supported on Windows only) - possible values: netbios (default on Windows), host (default on Linux), shorthost (since version 5.4.7; returns part of the hostname before the first dot, a full string for names without dots).
transform (since version 5.4.7) - possible values:
none (default), lower (convert to lowercase)
The value is acquired by either GetComputerName() (for netbios) or gethostname() (for host) functions on Windows and by "hostname" command on other systems.

Examples of returned values:
on Linux:
=> system.hostname → linux-w7x1
=> system.hostname → example.com
=> system.hostname[shorthost] → example
on Windows:
=> system.hostname → WIN-SERV2008-I6
=> system.hostname[host] → Win-Serv2008-I6LonG
=> system.hostname[host,lower] → win-serv2008-i6long

See also a more detailed description.
system.hw.chassis[<info>]
Chassis information. String info - one of full (default), model, serial, type or vendor Example: system.hw.chassis[full]
Hewlett-Packard HP Pro 3010 Small Form Factor PC CZXXXXXXXX Desktop]

This key depends on the availability of the SMBIOS table.
Will try to read the DMI table from sysfs, if sysfs access fails then try reading directly from memory.

Root permissions are required because the value is acquired by reading from sysfs or memory.

Supported since Zabbix agent version 2.0.
system.hw.cpu[<cpu>,<info>]
CPU information. String or integer cpu - <CPU number> or all (default)
info - possible values:
full (default), curfreq, maxfreq, model or vendor
Example:
=> system.hw.cpu[0,vendor] → AuthenticAMD

Gathers info from /proc/cpuinfo and /sys/devices/system/cpu/[cpunum]/cpufreq/cpuinfo_max_freq.

If a CPU number and curfreq or maxfreq is specified, a numeric value is returned (Hz).

Supported since Zabbix agent version 2.0.
system.hw.devices[<type>]
Listing of PCI or USB devices. Text type (since version 2.0) - pci (default) or usb Example:
=> system.hw.devices[pci] → 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge
[..]

Returns the output of either lspci or lsusb utility (executed without any parameters).
system.hw.macaddr[<interface>,<format>]
Listing of MAC addresses. String interface - all (default) or a regular expression
format - full (default) or short
Lists MAC addresses of the interfaces whose name matches the given interface regular expression (all lists for all interfaces).

Example:
=> system.hw.macaddr["eth0$",full] → [eth0] 00:11:22:33:44:55

If format is specified as short, interface names and identical MAC addresses are not listed.

Supported since Zabbix agent version 2.0.
system.localtime[<type>]
System time. Integer - with type as utc

String - with type as local
type (since version 2.0) - possible values:
utc - (default) the time since the Epoch (00:00:00 UTC, January 1, 1970), measured in seconds.
local - the time in the 'yyyy-mm-dd,hh:mm:ss.nnn,+hh:mm' format
Must be used as a passive check only.

Example:
=> system.localtime[local] → create an item using this key and then use it to display host time in the Clock dashboard widget.
system.run[command,<mode>]
Run specified command on the host. Text result of the command

1 - with mode as nowait (regardless of command result)
command - command for execution
mode - possible values:
wait - wait end of execution (default),
nowait - do not wait
Up to 512KB of data can be returned, including trailing whitespace that is truncated.
To be processed correctly, the output of the command must be text.

Example:
=> system.run[ls -l /] → detailed file list of root directory.

Note: system.run items are disabled by default. Learn how to enable them.

The return value of the item is standard output together with standard error produced by command. The exit code is not checked.

Empty result is allowed starting with Zabbix 2.4.0.
See also: Command execution.
system.stat[resource,<type>]
System statistics. Integer or float ent - number of processor units this partition is entitled to receive (float)
kthr,<type> - information about kernel thread states:
r - average number of runnable kernel threads (float)
b - average number of kernel threads placed in the Virtual Memory Manager wait queue (float)
memory,<type> - information about the usage of virtual and real memory:
avm - active virtual pages (integer)
fre - size of the free list (integer)
page,<type> - information about page faults and paging activity:
fi - file page-ins per second (float)
fo - file page-outs per second (float)
pi - pages paged in from paging space (float)
po - pages paged out to paging space (float)
fr - pages freed (page replacement) (float)
sr - pages scanned by page-replacement algorithm (float)
faults,<type> - trap and interrupt rate:
in - device interrupts (float)
sy - system calls (float)
cs - kernel thread context switches (float)
cpu,<type> - breakdown of percentage usage of processor time:
us - user time (float)
sy - system time (float)
id - idle time (float)
wa - idle time during which the system had outstanding disk/NFS I/O request(s) (float)
pc - number of physical processors consumed (float)
ec - the percentage of entitled capacity consumed (float)
lbusy - indicates the percentage of logical processor(s) utilization that occurred while executing at the user and system level (float)
app - indicates the available physical processors in the shared pool (float)
disk,<type> - disk statistics:
bps - indicates the amount of data transferred (read or written) to the drive in bytes per second (integer)
tps - indicates the number of transfers per second that were issued to the physical disk/tape (float)
Comments
This item is supported on AIX only, since Zabbix 1.8.1.
Take note of the following limitations in these items:
=> system.stat[cpu,app] - supported only on AIX LPAR of type "Shared"
=> system.stat[cpu,ec] - supported on AIX LPAR of type "Shared" and "Dedicated" ("Dedicated" always returns 100 (percent))
=> system.stat[cpu,lbusy] - supported only on AIX LPAR of type "Shared"
=> system.stat[cpu,pc] - supported on AIX LPAR of type "Shared" and "Dedicated"
=> system.stat[ent] - supported on AIX LPAR of type "Shared" and "Dedicated"
system.sw.arch
Software architecture information. String Example:
=> system.sw.arch → i686

Info is acquired from uname() function.

Supported since Zabbix agent version 2.0.
system.sw.os[<info>]
Operating system information. String info - possible values:
full (default), short or name
Example:
=> system.sw.os[short]→ Ubuntu 2.6.35-28.50-generic 2.6.35.11

Info is acquired from (note that not all files and options are present in all distributions):
/proc/version (full)
/proc/version_signature (short)
PRETTY_NAME parameter from /etc/os-release on systems supporting it, or /etc/issue.net (name)

Supported since Zabbix agent version 2.0.
system.sw.packages[<package>,<manager>,<format>]
Listing of installed packages. Text package - all (default) or a regular expression
manager - all (default) or a package manager
format - full (default) or short
Lists (alphabetically) installed packages whose name matches the given package regular expression (all lists them all).

Example:
=> system.sw.packages[mini,dpkg,short] → python-minimal, python2.6-minimal, ubuntu-minimal

Supported package managers (executed command):
dpkg (dpkg --get-selections)
pkgtool (ls /var/log/packages)
rpm (rpm -qa)
pacman (pacman -Q)

If format is specified as full, packages are grouped by package managers (each manager on a separate line beginning with its name in square brackets).
If format is specified as short, packages are not grouped and are listed on a single line.

Supported since Zabbix agent version 2.0.
system.swap.in[<device>,<type>]
Swap in (from device into memory) statistics. Integer device - device used for swapping (default is all)
type - possible values:
count (number of swapins), sectors (sectors swapped in), pages (pages swapped in).
See also platform-specific details for this parameter.
Example:
=> system.swap.in[,pages]

The source of this information is:
/proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
/proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
system.swap.out[<device>,<type>]
Swap out (from memory onto device) statistics. Integer device - device used for swapping (default is all)
type - possible values:
count (number of swapouts), sectors (sectors swapped out), pages (pages swapped out).
See also platform-specific details for this parameter.
Example:
=> system.swap.out[,pages]

The source of this information is:
/proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
/proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
system.swap.size[<device>,<type>]
Swap space size in bytes or in percentage from total. Integer - for bytes

Float - for percentage
device - device used for swapping (default is all)
type - possible values:
free (free swap space, default), pfree (free swap space, in percent), pused (used swap space, in percent), total (total swap space), used (used swap space)
Note that pfree, pused are not supported on Windows if swap size is 0.
See also platform-specific details for this parameter.
Example:
=> system.swap.size[,pfree] → free swap space percentage

If device is not specified Zabbix agent will only take into account swap devices (files), physical memory will be ignored. For example, on Solaris systems swap -s command includes a portion of physical memory and swap devices (unlike swap -l).

Note that this key might report incorrect swap space size/percentage on virtualized (VMware ESXi, VirtualBox) Windows platforms. In this case you may use the perf_counter[\700(_Total)\702] key to obtain correct swap space percentage.
system.uname
Identification of the system. String Example of returned value (Unix):
FreeBSD localhost 4.2-RELEASE FreeBSD 4.2-RELEASE #0: Mon Nov i386

Example of returned value (Windows):
Windows ZABBIX-WIN 6.0.6001 Microsoft® Windows Server® 2008 Standard Service Pack 1 x86

On Unix since Zabbix 2.2.0 the value for this item is obtained with uname() system call. Previously it was obtained by invoking "uname -a". The value of this item might differ from the output of "uname -a" and does not include additional information that "uname -a" prints based on other sources.

On Windows since Zabbix 3.0 the value for this item is obtained from Win32_OperatingSystem and Win32_Processor WMI classes. Previously it was obtained from volatile Windows APIs and undocumented registry keys. The OS name (including edition) might be translated to the user's display language. On some versions of Windows it contains trademark symbols and extra spaces.

Note that on Windows the item returns OS architecture, whereas on Unix it returns CPU architecture.
system.uptime
System uptime in seconds. Integer In item configuration, use s or uptime units to get readable values.
system.users.num
Number of users logged in. Integer who command is used on the agent side to obtain the value.
vfs.dev.discovery
List of block devices and their type. Used for low-level discovery. JSON object This item is supported on Linux platform only.

Supported since Zabbix 4.4.0.
vfs.dev.read[<device>,<type>,<mode>]
Disk read statistics. Integer - with type in sectors, operations, bytes

Float - with type in sps, ops, bps

Note: if using an update interval of three hours or more2, will always return '0'
device - disk device (default is all 3)
type - possible values: sectors, operations, bytes, sps, ops, bps
Note that 'type' parameter support and defaults depend on the platform. See platform-specific details.
sps, ops, bps stand for: sectors, operations, bytes per second, respectively.
mode - possible values: avg1 (one-minute average, default), avg5, avg15.
This parameter is supported only with type in: sps, ops, bps.
You may use relative device names (for example, sda) as well as an optional /dev/ prefix (for example, /dev/sda).

LVM logical volumes are supported.

Default values of 'type' parameter for different OSes:
AIX - operations
FreeBSD - bps
Linux - sps
OpenBSD - operations
Solaris - bytes

Example:
=> vfs.dev.read[,operations]

sps, ops and bps on supported platforms used to be limited to 8 devices (7 individual and one all). Since Zabbix 2.0.1 this limit is 1024 devices (1023 individual and one for all).
vfs.dev.write[<device>,<type>,<mode>]
Disk write statistics. Integer - with type in sectors, operations, bytes

Float - with type in sps, ops, bps

Note: if using an update interval of three hours or more2, will always return '0'
device - disk device (default is all 3)
type - possible values: sectors, operations, bytes, sps, ops, bps
Note that 'type' parameter support and defaults depend on the platform. See platform-specific details.
sps, ops, bps stand for: sectors, operations, bytes per second, respectively.
mode - possible values: avg1 (one-minute average, default), avg5, avg15.
This parameter is supported only with type in: sps, ops, bps.
You may use relative device names (for example, sda) as well as an optional /dev/ prefix (for example, /dev/sda).

LVM logical volumes are supported.

Default values of 'type' parameter for different OSes:
AIX - operations
FreeBSD - bps
Linux - sps
OpenBSD - operations
Solaris - bytes

Example:
=> vfs.dev.write[,operations]

sps, ops and bps on supported platforms used to be limited to 8 devices (7 individual and one all). Since Zabbix 2.0.1 this limit is 1024 (1023 individual and one for all).
vfs.dir.count[dir,<regex_incl>,<regex_excl>,<types_incl>,<types_excl>,<max_depth>,<min_size>,<max_size>,<min_age>,<max_age>,<regex_excl_dir>]
Directory entry count. Integer dir - absolute path to directory
regex_incl - regular expression describing the name pattern of the entity (file, directory, symbolic link) to include; include all if empty (default value)
regex_excl - regular expression describing the name pattern of the entity (file, directory, symbolic link) to exclude; don't exclude any if empty (default value)
types_incl - directory entry types to count, possible values:
file - regular file, dir - subdirectory, sym - symbolic link, sock - socket, bdev - block device, cdev - character device, fifo - FIFO, dev - synonymous with "bdev,cdev", all - all types (default), i.e. "file,dir,sym,sock,bdev,cdev,fifo". Multiple types must be separated with comma and quoted.
types_excl - directory entry types (see <types_incl>) to NOT count. If some entry type is in both <types_incl> and <types_excl>, directory entries of this type are NOT counted.
max_depth - maximum depth of subdirectories to traverse. -1 (default) - unlimited, 0 - no descending into subdirectories.
min_size - minimum size (in bytes) for file to be counted. Smaller files will not be counted. Memory suffixes can be used.
max_size - maximum size (in bytes) for file to be counted. Larger files will not be counted. Memory suffixes can be used.
min_age - minimum age (in seconds) of directory entry to be counted. More recent entries will not be counted. Time suffixes can be used.
max_age - maximum age (in seconds) of directory entry to be counted. Entries so old and older will not be counted (modification time). Time suffixes can be used.
regex_excl_dir - regular expression describing the name pattern of the directory to exclude. All content of the directory will be excluded (in contrast to regex_excl)
Environment variables, e.g. %APP_HOME%, $HOME and %TEMP% are not supported.

Pseudo-directories "." and ".." are never counted.

Symbolic links are never followed for directory traversal.

On Windows, directory symlinks are skipped and hard links are counted only once.

Both regex_incl and regex_excl are being applied to files and directories when calculating entry size, but are ignored when picking subdirectories to traverse (if regex_incl is “(?i)^.+\.zip$” and max_depth is not set, then all subdirectories will be traversed, but only files of type zip will be counted).

Execution time is limited by the default timeout value in agent configuration (3 sec). Since large directory traversal may take longer than that, no data will be returned and the item will turn unsupported. Partial count will not be returned.

When filtering by size, only regular files have meaningful sizes. Under Linux and BSD, directories also have non-zero sizes (a few Kb typically). Devices have zero sizes, e.g. the size of /dev/sda1 does not reflect the respective partition size. Therefore, when using <min_size> and <max_size>, it is advisable to specify <types_incl> as "file", to avoid surprises.

Examples:
⇒ vfs.dir.count[/dev] - monitors number of devices in /dev (Linux)
⇒ vfs.dir.count["C:\Users\ADMINI~1\AppData\Local\Temp"] - monitors number of files in temporary directory (Windows)

Supported since Zabbix 4.0.0.
vfs.dir.size[dir,<regex_incl>,<regex_excl>,<mode>,<max_depth>,<regex_excl_dir>]
Directory size (in bytes). Integer dir - absolute path to directory
regex_incl - regular expression describing the name pattern of the entity (file, directory, symbolic link) to include; include all if empty (default value)
regex_excl - regular expression describing the name pattern of the entity (file, directory, symbolic link) to exclude; don't exclude any if empty (default value)
mode - possible values:
apparent (default) - gets apparent file sizes rather than disk usage (acts as du -sb dir), disk - gets disk usage (acts as du -s -B1 dir). Unlike du command, vfs.dir.size item takes hidden files in account when calculating directory size (acts as du -sb .[^.]* * within dir).
max_depth - maximum depth of subdirectories to traverse. -1 (default) - unlimited, 0 - no descending into subdirectories.
regex_excl_dir - regular expression describing the name pattern of the directory to exclude. All content of the directory will be excluded (in contrast to regex_excl)
Only directories with at least read permission for zabbix user are calculated.

On Windows any symlink is skipped and hard links are taken into account only once.

With large directories or slow drives this item may time out due to the Timeout setting in agent and server/proxy configuration files. Increase the timeout values as necessary.

Examples:
⇒ vfs.dir.size[/tmp,log] - calculates size of all files in /tmp which contain 'log'
⇒ vfs.dir.size[/tmp,log,^.+\.old$] - calculates size of all files in /tmp which contain 'log', excluding files containing '.old'

The file size limit depends on large file support.

Supported since Zabbix 3.4.0.
vfs.file.cksum[file]
File checksum, calculated by the UNIX cksum algorithm. Integer file - full path to file Example:
=> vfs.file.cksum[/etc/passwd]

Example of returned value:
1938292000

The file size limit depends on large file support.
vfs.file.contents[file,<encoding>]
Retrieving contents of a file. Text file - full path to file
encoding - code page identifier
Returns an empty string if the file is empty or contains LF/CR characters only.

Byte order mark (BOM) is excluded from the output.

Example:
=> vfs.file.contents[/etc/passwd]

This item is limited to files no larger than 64 Kbytes.

Supported since Zabbix agent version 2.0.
vfs.file.exists[file,<types_incl>,<types_excl>]
Checks if file exists. 0 - not found

1 - file of the specified type exists
file - full path to file
types_incl - list of file types to include, possible values: file (regular file, default (if types_excl is not set)), dir (directory), sym (symbolic link), sock (socket), bdev (block device), cdev (character device), fifo (FIFO), dev (synonymous with "bdev,cdev"), all (all mentioned types, default if types_excl is set).
types_excl - list of file types to exclude, see types_incl for possible values (by default no types are excluded)
Multiple types must be separated with a comma and the entire set enclosed in quotes "".
On Windows the double quotes have to be backslash '\' escaped and the whole item key enclosed in double quotes when using the command line utility for calling zabbix_get.exe or agent2.

If the same type is in both <types_incl> and <types_excl>, files of this type are excluded.

Examples:
=> vfs.file.exists[/tmp/application.pid]
=> vfs.file.exists[/tmp/application.pid,"file,dir,sym"]
=> vfs.file.exists[/tmp/application_dir,dir]

The file size limit depends on large file support.

Note that the item may turn unsupported on Windows if a directory is searched within a non-existing directory, e.g. vfs.file.exists[C:\no\dir,dir] (where 'no' does not exist).
vfs.file.md5sum[file]
MD5 checksum of file. Character string (MD5 hash of the file) file - full path to file Example:
=> vfs.file.md5sum[/usr/local/etc/zabbix_agentd.conf]

Example of returned value:
b5052decb577e0fffd622d6ddc017e82

The file size limit (64 MB) for this item was removed in version 1.8.6.

The file size limit depends on large file support.
vfs.file.regexp[file,regexp,<encoding>,<start line>,<end line>,<output>]
Find string in a file. The line containing the matched string, or as specified by the optional output parameter file - full path to file
regexp - regular expression describing the required pattern
encoding - code page identifier
start line - the number of first line to search (first line of file by default).
end line - the number of last line to search (last line of file by default).
output - an optional output formatting template. The \0 escape sequence is replaced with the matched part of text (from the first character where match begins until the character where match ends) while an \N (where N=1...9) escape sequence is replaced with Nth matched group (or an empty string if the N exceeds the number of captured groups).
Only the first matching line is returned.
An empty string is returned if no line matched the expression.

Byte order mark (BOM) is excluded from the output.

Content extraction using the output parameter takes place on the agent.

The start line, end line and output parameters are supported from version 2.2.

Examples:
=> vfs.file.regexp[/etc/passwd,zabbix]
=> vfs.file.regexp[/path/to/some/file,"([0-9]+)$",,3,5,\1]
=> vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1] → getting the ID of user zabbix
vfs.file.regmatch[file,regexp,<encoding>,<start line>,<end line>]
Find string in a file. 0 - match not found

1 - found
file - full path to file
regexp - regular expression describing the required pattern
encoding - code page identifier
start line - the number of first line to search (first line of file by default).
end line - the number of last line to search (last line of file by default).
Byte order mark (BOM) is ignored.

The start line and end line parameters are supported from version 2.2.

Example:
=> vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[file]
File size (in bytes). Integer file - full path to file The file must have read permissions for user zabbix.

Example:
=> vfs.file.size[/var/log/syslog]

The file size limit depends on large file support.
vfs.file.time[file,<mode>]
File time information. Integer (Unix timestamp) file - full path to the file
mode - possible values:
modify (default) - last time of modifying file content,
access - last time of reading file,
change - last time of changing file properties
Example:
=> vfs.file.time[/etc/passwd,modify]

The file size limit depends on large file support.
vfs.fs.discovery
List of mounted filesystems and their types. Used for low-level discovery. JSON object Supported since Zabbix agent version 2.0.

{#FSDRIVETYPE} macro is supported on Windows since Zabbix agent version 3.0.
vfs.fs.get
List of mounted filesystems, their types, disk space and inode statistics. Can be used for low-level discovery. JSON object Supported since Zabbix agent version 4.4.5.
vfs.fs.inode[fs,<mode>]
Number or percentage of inodes. Integer - for number

Float - for percentage
fs - filesystem
mode - possible values:
total (default), free, used, //pfree // (free, percentage), pused (used, percentage)
Example:
=> vfs.fs.inode[/,pfree]
vfs.fs.size[fs,<mode>]
Disk space in bytes or in percentage from total. Integer - for bytes

Float - for percentage
fs - filesystem
mode - possible values:
total (default), free, used, pfree (free, percentage), pused (used, percentage)
In case of a mounted volume, disk space for local file system is returned.

Example:
=> vfs.fs.size[/tmp,free]

Reserved space of a file system is taken into account and not included when using the free mode.
vm.memory.size[<mode>]
Memory size in bytes or in percentage from total. Integer - for bytes

Float - for percentage
mode - possible values:
total (default), active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired, used, pused (used, percentage), available, pavailable (available, percentage)
See also platform-specific support and additional details for this parameter.
This item accepts three categories of parameters:

1) total - total amount of memory;
2) platform-specific memory types: active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired;
3) user-level estimates on how much memory is used and available: used, pused, available, pavailable.
web.page.get[host,<path>,<port>]
Get content of web page. Web page source as text (including headers) host - hostname or URL (as scheme://host:port/path, where only host is mandatory).
Allowed URL schemes: http, https4. Missing scheme will be treated as http. If URL is specified path and port must be empty. Specifying user name/password when connecting to servers that require authentication, for example: http://user:[email protected] is only possible with cURL support 4.
Punycode is supported in hostnames.
path - path to HTML document (default is /)
port - port number (default is 80 for HTTP)
This item turns unsupported if the resource specified in host does not exist or is unavailable.

host can be hostname, domain name, IPv4 or IPv6 address. But for IPv6 address Zabbix agent must be compiled with IPv6 support enabled.

Example:
=> web.page.get[www.example.com,index.php,80]
=> web.page.get[https://www.example.com]
=> web.page.get[https://blog.example.com/?s=zabbix]
=> web.page.get[localhost:80]
=> web.page.get["[::1]/server-status"]
web.page.perf[host,<path>,<port>]
Loading time of full web page (in seconds). Float host - hostname or URL (as scheme://host:port/path, where only host is mandatory).
Allowed URL schemes: http, https4. Missing scheme will be treated as http. If URL is specified path and port must be empty. Specifying user name/password when connecting to servers that require authentication, for example: http://user:[email protected] is only possible with cURL support 4.
Punycode is supported in hostnames.
path - path to HTML document (default is /)
port - port number (default is 80 for HTTP)
This item turns unsupported if the resource specified in host does not exist or is unavailable.

host can be hostname, domain name, IPv4 or IPv6 address. But for IPv6 address Zabbix agent must be compiled with IPv6 support enabled.

Example:
=> web.page.perf[www.example.com,index.php,80]
=> web.page.perf[https://www.example.com]
web.page.regexp[host,<path>,<port>,regexp,<length>,<output>]
Find string on a web page. The matched string, or as specified by the optional output parameter host - hostname or URL (as scheme://host:port/path, where only host is mandatory).
Allowed URL schemes: http, https4. Missing scheme will be treated as http. If URL is specified path and port must be empty. Specifying user name/password when connecting to servers that require authentication, for example: http://user:[email protected] is only possible with cURL support 4.
Punycode is supported in hostnames.
path - path to HTML document (default is /)
port - port number (default is 80 for HTTP)
regexp - regular expression describing the required pattern
length - maximum number of characters to return
output - an optional output formatting template. The \0 escape sequence is replaced with the matched part of text (from the first character where match begins until the character where match ends) while an \N (where N=1...9) escape sequence is replaced with Nth matched group (or an empty string if the N exceeds the number of captured groups).
This item turns unsupported if the resource specified in host does not exist or is unavailable.

host can be hostname, domain name, IPv4 or IPv6 address. But for IPv6 address Zabbix agent must be compiled with IPv6 support enabled.

Content extraction using the output parameter takes place on the agent.

The output parameter is supported from version 2.2.

Example:
=> web.page.regexp[www.example.com,index.php,80,OK,2]
=> web.page.regexp[https://www.example.com,,,OK,2]
zabbix.stats[<ip>,<port>]
Return a set of Zabbix server or proxy internal metrics remotely. JSON object ip - IP/DNS/network mask list of servers/proxies to be remotely queried (default is 127.0.0.1)
port - port of server/proxy to be remotely queried (default is 10051)
Note that the stats request will only be accepted from the addresses listed in the 'StatsAllowedIP' server/proxy parameter on the target instance.

A selected set of internal metrics is returned by this item. For details, see Remote monitoring of Zabbix stats.
zabbix.stats[<ip>,<port>,queue,<from>,<to>]
Return number of monitored items in the queue which are delayed on Zabbix server or proxy remotely. JSON object ip - IP/DNS/network mask list of servers/proxies to be remotely queried (default is 127.0.0.1)
port - port of server/proxy to be remotely queried (default is 10051)
queue - constant (to be used as is)
from - delayed by at least (default is 6 seconds)
to - delayed by at most (default is infinity)
Note that the stats request will only be accepted from the addresses listed in the 'StatsAllowedIP' server/proxy parameter on the target instance.

Обязательные и необязательные параметры

Параметры без угловых скобок обязательны. Параметры, отмеченные угловыми скобками < >, необязательны.

Ключ
Описание Возвращаемое значение Параметры Комментарии
agent.hostname
Имя хоста агента. Строка Возвращает действительное значение hostname агента из файла конфигурации.
agent.ping
Проверка доступности агента. Ничего - недоступен

1 - доступен
Используйте nodata() функцию триггера для проверки недоступности узла сети.
agent.version
Версия Zabbix агента. Строка Пример возвращаемого значения: 1.8.2
kernel.maxfiles
Максимальное количество открытых файлов поддерживаемое ОС. Целое число
kernel.maxproc
Максимальное количество процессов поддерживаемое ОС. Целое число
log[файл,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<вывод>,<максзадержка>,<опции>]
Мониторинг файлов журналов (логов). Журнал (лог) файл - абсолютный путь и имя файла журнала
регулярное выражение - регулярное выражение описывающее требуемый шаблон содержимого
кодировка - идентификатор кодовой страницы
макс. кол-во строк - максимальное количество новых строк в секунду, которое агент будет отправлять Zabbix серверу или прокси. Этот параметр заменяет значение 'MaxLinesPerSecond' в zabbix_agentd.conf
режим - возможные значения:
all (по умолчанию), skip - пропуск обработки старых данных (влияет только на недавно созданные элементы данных, которые еще не получали никаких данных).
вывод - дополнительный шаблон форматирования вывода.
\0 - управляющая последовательность заменяется найденным текстом, тогда
\N (где N=1..9) - управляющая последовательность заменяется N-нной совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
максзадержка - максимальная задержка в секундах. Тип: число с плавающей точкой. Значения: 0 - (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 - игнорировать более старые строки с целью получения наиболее новых строк проанализированных в течении "максзадержка" секунд. Перед использованием прочитайте заметки по максзадержка!
опции (с версии 4.4.7) - дополнительные опции: mtime-noreread - неуникальные записи, перечитываются только при изменении размера файла (игнорировать изменение времени модификации). (Этот параметр не рекомендуется с версии 5.0.2, поскольку теперь mtime игнорируется. До версии 5.0.2 файл по умолчанию читался повторно, если время модификации или размер файла менялись.)
Элемент данных должен быть настроен активной проверкой.
Если файл не существует или доступ к нему не разрешен, элемент данных переходит в состояние неподдерживается.

Если параметр вывод оставить пустым - будет возвращена вся строка соответствующая регулярному выражению.
Заметьте, что все глобальные регулярные выражения исключая 'Результат ИСТИНА' всегда возвращают всю строку соответствующую выражению и параметр вывод игнорируется.

Извлечение содержания согласно параметра вывод производится на стороне агенте.

Примеры:
=> log[/var/log/syslog]
=> log[/var/log/syslog,error]
=> log[/home/zabbix/logs/logfile,,,100]

Пример использования параметра вывод для извлечения числа из записи в журнале:
log[/app1/app.log,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1]→ будет соответствовать записи в журнале "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и на сервер отправится только число 6080. Так как отправляется число, у этого элемента данных журнала можно изменить "Тип информации" с "Журнал (лог)" на "Числовой (целое положительное)" и это значение можно будет использовать на на графиках, в триггерах и т.д.

Пример использования параметра вывод для изменения вывода записи журнала перед отправкой на сервер:
log[/app1/app.log,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"]→ будет соответствовать записи в журнале "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и на сервер отправится измененная запись "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08".

Параметр режим поддерживается начиная с Zabbix 2.0.
Параметр вывод поддерживается начиная с Zabbix 2.2.
Параметр максзадержка поддерживается начиная с Zabbix 3.2.

Смотрите дополнительную информацию о мониторинге файлов журналов.
log.count[файл,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<максзадержка>,<опции>]
Подсчёт количества совпадающих строк в мониторинге файла журнала (логов). Целое число файл - абсолютный путь и имя файла журнала
регулярное выражение - регулярное выражение описывающее требуемый шаблон содержимого
кодировка - идентификатор кодовой страницы
макс. кол-во строк - максимальное количество новых строк в секунду, которое агент будет анализировать. Значением по умолчанию является 10*'MaxLinesPerSecond' в zabbix_agentd.conf.
режим - возможные значения:
all (по умолчанию), skip - пропуск обработки старых данных (влияет только на недавно созданные элементы данных).
максзадержка - максимальная задержка в секундах. Тип: число с плавающей точкой. Значения: 0 - (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 - игнорировать более старые строки с целью получения наиболее новых строк проанализированных в течении "максзадержка" секунд. Перед использованием прочитайте заметки по максзадержка!
опции (с версии 4.4.7) - дополнительные опции: mtime-noreread - неуникальные записи, перечитываются только при изменении размера файла (игнорировать изменение времени модификации). (Этот параметр не рекомендуется с версии 5.0.2, поскольку теперь mtime игнорируется. До версии 5.0.2 файл по умолчанию читался повторно, если время модификации или размер файла менялись.)
Элемент данных должен быть настроен активной проверкой.
Если файл не существует или доступ к нему не разрешен, элемент данных переходит в состояние неподдерживается.

Также смотрите дополнительную информацию о мониторинге файлов журналов.

Поддерживается начиная с Zabbix 3.2.0.
logrt[файл_regexp,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<вывод>,<максзадержка>,<опции>]
Мониторинг файлов журналов (логов) с поддержкой ротации логов. Журнал (лог) файл_regexp - абсолютный путь к файлу и регулярное выражение описывающее его имя
регулярное выражение - регулярное выражение описывающее требуемый шаблон содержимого
кодировка - идентификатор кодовой страницы
макс. кол-во строк - максимальное количество новых строк в секунду, которое агент будет отправлять Zabbix серверу или прокси. Этот параметр заменяет значение 'MaxLinesPerSecond' в zabbix_agentd.conf
режим - возможные значения:
all (по умолчанию), skip - пропуск обработки старых данных (влияет только на недавно созданные элементы данных, которые еще не получали никаких данных).
вывод - дополнительный шаблон форматирования вывода:
\0 - управляющая последовательность заменяется найденным текстом, тогда
\N (где N=1..9) - управляющая последовательность заменяется N-нной совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
максзадержка - максимальная задержка в секундах. Тип: число с плавающей точкой. Значения: 0 - (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 - игнорировать более старые строки с целью получения наиболее новых строк проанализированных в течении "максзадержка" секунд. Перед использованием прочитайте заметки по максзадержка!
опции - тип ротации файлов журналов. Возможные значения:
rotate (по умолчанию), copytruncate. Обратите внимание, что copytruncate нельзя использовать вместе с maxdelay. В этом случае maxdelay должен быть равен 0 или не задан. Смотрите заметки по copytruncate.
Элемент данных должен быть настроен активной проверкой.
Ротация журналов основывается на времени последнего изменения файлов.

Если параметр вывод оставить пустым - будет возвращена вся строка соответствующая регулярному выражению.
Заметьте, что все глобальные регулярные выражения исключая 'Результат ИСТИНА' всегда возвращают всю строку соответствующую выражению и параметр вывод игнорируется.

Извлечение содержимого согласно параметра вывод производится на стороне агенте.

Примеры:
=> logrt["/home/zabbix/logs/^logfile[0-9]{1,3}$",,,100] → совпадает с файлом наподобии "logfile1" (но не совпадает с ".logfile1")
=> logrt["/home/user/logfile_.*_[0-9]{1,3}","pattern_to_match","UTF-8",100] → будет собирать данные с файлов таких как "logfile_abc_1" или "logfile__001".

Пример использования параметра вывод для извлечения числа из записи в журнале:
logrt[/app1/^test.*log$,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1]→ будет соответствовать записи в журнале "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и на сервер отправится только число 6080. Так как отправляется число, у этого элемента данных журнала можно изменить "Тип информации" с "Журнал (лог)" на "Числовой (целое положительное)" и это значение можно будет использовать на на графиках, в триггерах и т.д.

Пример использования параметра вывод для изменения вывода записи журнала перед отправкой на сервер:
logrt[/app1/^test.*log$,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"]→ будет соответствовать записи в журнале "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и на сервер отправится измененная запись "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08".

Параметр режим поддерживается начиная с Zabbix 2.0.
Параметр вывод поддерживается начиная с Zabbix 2.2.
Параметр максзадержка поддерживается начиная с Zabbix 3.2.
Параметр опции поддерживается начиная с Zabbix 4.0.

Смотрите дополнительную информацию о мониторинге файлов журналов.
logrt.count[файл_regexp,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<максзадержка>,<опции>]
Подсчёт количества совпадающих строк в мониторинге файла журнала (логов) с поддержкой ротации логов. Целое число файл_regexp - абсолютный путь к файлу и регулярное выражение описывающее его имя
регулярное выражение - регулярное выражение описывающее требуемый шаблон содержимого
кодировка - идентификатор кодовой страницы
макс. кол-во строк - максимальное количество новых строк в секунду, которое агент будет анализировать. Значением по умолчанию является 10*'MaxLinesPerSecond' в zabbix_agentd.conf.
режим - возможные значения:
all (по умолчанию), skip - пропуск обработки старых данных (влияет только на недавно созданные элементы данных).
максзадержка - максимальная задержка в секундах. Тип: число с плавающей точкой. Значения: 0 - (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 - игнорировать более старые строки с целью получения наиболее новых строк проанализированных в течении "максзадержка" секунд. Перед использованием прочитайте заметки по максзадержка!
опции - тип ротации файлов журналов. Возможные значения:
rotate (по умолчанию), copytruncate. Обратите внимание, что copytruncate нельзя использовать вместе с maxdelay. В этом случае maxdelay должен быть равен 0 или не задан. Смотрите заметки по copytruncate.
Элемент данных должен быть настроен активной проверкой.
Ротация журналов основывается на времени последнего изменения файлов.

Смотрите дополнительную информацию о мониторинге файлов журналов.

Параметр опции поддерживается начиная с Zabbix 4.0.

Поддерживается начиная с Zabbix 3.2.0.
net.dns[<ip>,имя,<тип>,<время ожидания>,<количество>,<протокол>]
Проверка, работает ли DNS сервис. 0 - DNS не работает (сервер не ответил или ответ DNS некорректен)

1 - DNS работает
ip - IP адрес DNS сервера (оставьте пустым, чтобы использовать DNS сервера по умолчанию, игнорируется в Windows)
имя - проверяемое имя DNS
тип - запрашиваемый тип записи (по умолчанию SOA)
время ожидания (игнорируется в Windows) - время ожидания ответа в секундах (по умолчанию 1 секунда)
количество (игнорируется в Windows) - количество попыток запросов (по умолчанию 2)
протокол - используемый протокол при выполнении DNS запросов: udp (по умолчанию) или tcp
Пример ключа:
=> net.dns[8.8.8.8,zabbix.com,MX,2,1]

Возможные значения для тип:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (исключая Windows), HINFO, MINFO, TXT, SRV

Национальные доменные имена не поддерживаются вместо них, пожалуйста, используйте имена в IDNA кодировке.

Параметр протокол поддерживается начиная с Zabbix 3.0.
Тип записи SRV поддерживается Zabbix агентом начиная с версий 1.8.6 (Unix) и 2.0.0 (Windows).

Название до Zabbix 2.0 (еще поддерживается): net.tcp.dns
net.dns.record[<ip>,имя,<тип>,<время ожидания>,<количество>,<протокол>]
Выполнение DNS запроса. Строка символов с требуемым типом информации ip - IP адрес DNS сервера (оставьте пустым, чтобы использовать DNS сервера по умолчанию, игнорируется в Windows)
имя - проверяемое имя DNS
тип - запрашиваемый тип записи (по умолчанию SOA)
время ожидания (игнорируется в Windows) - время ожидания ответа в секундах (по умолчанию 1 секунда)
количество (игнорируется в Windows) - количество попыток запросов (по умолчанию 2)
протокол - используемый протокол при выполнении DNS запросов: udp (по умолчанию) или tcp
Пример ключа:
=> net.dns.record[8.8.8.8,zabbix.com,MX,2,1]

Возможные значения для тип:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (исключая Windows), HINFO, MINFO, TXT, SRV

Национальные доменные имена не поддерживаются вместо них, пожалуйста, используйте имена в IDNA кодировке.

Параметр протокол поддерживается начиная с Zabbix 3.0.
Тип записи SRV поддерживается в Zabbix агенте начиная с версий 1.8.6 (Unix) и 2.0.0 (Windows).

Название до Zabbix 2.0 (еще поддерживается): net.tcp.dns.query
net.if.collisions[if]
Коллизии за пределами окна (out-of-window). Целое число if - имя сетевого интерфейса
net.if.discovery
Список сетевых интерфейсов. Используется низкоуровневым обнаружением. Объект JSON Поддерживается Zabbix агентом начиная с версии 2.0.

На FreeBSD, OpenBSD и NetBSD поддерживается начиная с версии Zabbix агента 2.2

В некоторых версиях Windows (например, Server 2008) может потребоваться установка последних обновлений для поддержки не-ASCII символов в именах интерфейсов.
net.if.in[if,<режим>]
Статистика по входящему трафику сетевого интерфейса. Целое число if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес (Windows)
режим - возможные значения:
bytes - количество байт (по умолчанию)
packets - количество пакетов
errors - количество ошибок
dropped - количество отброшенных пакетов
overruns (fifo) - количество ошибок FIFO буфера
frame - количество ошибок кадрирования пакетов
compressed - количество сжатых пакетов, полученных драйвером устройства
multicast - количество кадров многоадресного вещания, которые получены драйвером устройства
В Windows элемент данных берет значения с 64-битный счетчиков, если они доступны. 64-битные счетчики статистики по интерфейсам введены в Windows Vista и Windows Server 2008. Если 64-битный счетчики недоступны, агент будет использовать 32-битные счетчики.

Начиная с Zabbix агента 1.8.6 на Windows поддерживаются мультибайтные имена интерфейса.

Примеры:
=> net.if.in[eth0,errors]
=> net.if.in[eth0]

Вы можете получить описания сетевых интерфейсов в Windows, используя элементы данных net.if.discovery или net.if.list.

Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду.
net.if.out[if,<режим>]
Статистика по исходящему трафику сетевого интерфейса. Целое число if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес (Windows)
режим - возможные значения:
bytes - количество байт (по умолчанию)
packets - количество пакетов
errors - количество ошибок
dropped - количество отброшенных пакетов
overruns (fifo) - количество ошибок FIFO буфера
collisions (colls) - количество коллизий обнаруженных на интерфейсе
carrier - количество потерь несущей, обнаруженных драйвером устройства
compressed - количество сжатых пакетов, переданных драйвером устройства
В Windows элемент данных берет значения с 64-битный счетчиков, если они доступны. 64-битные счетчики статистики по интерфейсам введены в Windows Vista и Windows Server 2008. Если 64-битный счетчики недоступны, агент будет использовать 32-битные счетчики.

Начиная с Zabbix агента 1.8.6 на Windows поддерживаются мультибайтные имена интерфейса.

Примеры:
=> net.if.out[eth0,errors]
=> net.if.out[eth0]

Вы можете получить описания сетевых интерфейсов в Windows, используя элементы данных net.if.discovery или net.if.list.

Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду.
net.if.total[if,<режим>]
Суммарная статистика входящего и исходящего трафика на сетевом интерфейсе. Целое число if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес (Windows)
режим - возможные значения:
bytes - количество байт (по умолчанию)
packets - количество пакетов
errors - количество ошибок
dropped - количество отброшенных пакетов
overruns (fifo) - количество ошибок FIFO буфера
compressed - количество сжатых пакетов, переданных или полученных драйвером устройства
В Windows элемент данных берет значения с 64-битный счетчиков, если они доступны. 64-битные счетчики статистики по интерфейсам введены в Windows Vista и Windows Server 2008. Если 64-битный счетчики недоступны, агент будет использовать 32-битные счетчики.

Примеры:
=> net.if.total[eth0,errors]
=> net.if.total[eth0]

Вы можете получить описания сетевых интерфейсов в Windows, используя элементы данных net.if.discovery или net.if.list.

Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду.

Обратите внимание, отброшенные пакеты поддерживаются только, если оба ключа net.if.in и net.if.out работают с отброшенными пакетами на вашей платформе.
net.tcp.listen[порт]
Проверка, находится ли TCP порт в состоянии LISTEN. 0 - не находится в состоянии LISTEN

1 - находится в состоянии LISTEN
порт - номер TCP порта Пример:
=> net.tcp.listen[80]

В Linux поддерживается Zabbix агентом начиная с версии 1.8.4

Начиная с Zabbix 3.0.0, в ядрах Linux 2.6.14 и более новых, информация о TCP сокетах в состоянии listen берется из интерфейса ядра NETLINK, если возможно. В противном случае, информация берется из файлов /proc/net/tcp и /proc/net/tcp6.
net.tcp.port[<ip>,порт]
Проверка возможности создания TCP подключения на указанный номер порта. 0 - не удалось подключиться

1 - удалось подключиться
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта
Пример:
=> net.tcp.port[,80] → можно использовать для проверки доступности веб-сервера, работающего на 80 порту.

Для простого тестирования производительности TCP используйте net.tcp.service.perf[tcp,<ip>,<порт>]

Обратите внимание, что эти проверки могут привести к дополнительным записям в системных файлах журналов (обычно сессии SMTP и SSH журналируются).

Старое название: check_port[*]
net.tcp.service[сервис,<ip>,<порт>]
Проверка, запущен ли сервис и принимает ли он TCP подключения. 0 - сервис недоступен

1 - сервис запущен
сервис - один из:
ssh, ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet(смотри детали)
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта сервиса)
Пример:
=> net.tcp.service[ftp,,45] - можно использовать для тестирования доступности FTP сервера на TCP 45 порту.

Обратите внимание, что эти проверки могут привести к дополнительным записям в системных файлах журналов (обычно сессии SMTP и SSH журналируются).

Проверка шифрованных протоколов (таких как IMAP на 993 порту или POP на 995 порту) в настоящее время не поддерживается. Как решение, пожалуйста, для подобных проверок используйте net.tcp.port.

Проверка LDAP и HTTPS через Windows агента в настоящее время не поддерживается.

Обратите внимание, что telnet проверка ищет запрос на вход (с ':' в конце).

Смотрите также известные проблемы по проверке HTTPS сервиса.

Сервисы https и telnet поддерживается Zabbix с версии 2.0.

Старое название: check_service[*]
net.tcp.service.perf[сервис,<ip>,<порт>]
Проверка производительности TCP сервиса. 0 - сервис недоступен

секунды - количество секунд потраченное на подключение к сервису
сервис - один из:
ssh, ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (смотри детали)
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта сервиса)
Пример:
=> net.tcp.service.perf[ssh] - можно использовать для тестирования скорости изначального ответа от SSH сервера.

Проверка шифрованных протоколов (таких как IMAP на 993 порту или POP на 995 порту) в настоящее время не поддерживается. Как решение, пожалуйста, для подобных проверок используйте net.tcp.service.perf[tcp,<ip>,<порт>].

Проверка LDAP и HTTPS через Windows агента в настоящее время не поддерживается.

Обратите внимание, что telnet проверка ищет запрос на вход (с ':' в конце).

Смотрите также известные проблемы по проверке HTTPS сервиса.

Сервисы https и telnet поддерживается Zabbix с версии 2.0.

Старое название: check_service_perf[*]
net.udp.listen[порт]
Проверка, находится ли UDP порт в состоянии LISTEN. 0 - не находится в состоянии LISTEN

1 - находится в состоянии LISTEN
порт - номер UDP порта Например:
=> net.udp.listen[68]

В Linux поддерживается Zabbix агентом начиная с версии 1.8.4
net.udp.service[сервис,<ip>,<порт>]
Проверка, запущен ли сервис и принимает ли он UDP подключения. 0 - сервис недоступен

1 - сервис запущен
сервис - ntp (смотри детали)
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта сервиса)
Пример:
=> net.udp.service[ntp,,45] → можно использовать для тестирования доступности NTP сервиса на 45 порту UDP.

Этот элемент данных поддерживается начиная с Zabbix 3.0.0, но ntp сервис был доступен в net.tcp.service[] элементе данных и в предыдущих версиях.
net.udp.service.perf[сервис,<ip>,<порт>]
Проверка производительности UDP сервиса. 0 - сервис недоступен

секунды - количество секунд потраченное на подключение к сервису
сервис - ntp (смотри детали)
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта сервиса)
Пример:
=> net.udp.service.perf[ntp] → можно использовать для тестирования времени ответа от NTP сервиса.

Этот элемент данных поддерживается начиная с Zabbix 3.0.0, но ntp сервис был доступен в net.tcp.service[] элементе данных и в предыдущих версиях.
proc.cpu.util[<имя>,<пользователь>,<тип>,<cmdline>,<режим>,<зона>]
Использование CPU процесса в процентах. Число с плавающей точкой имя - имя процесса (по умолчанию все процессы)
пользователь - имя пользователя (по умолчанию все пользователи)
тип - тип использования CPU:
total (по умолчанию), user, system
cmdline - фильтр по командной строке (является регулярным выражением)
режим - режим сбора данных: avg1 (по умолчанию), avg5, avg15
зона - целевая зона: current (по умолчанию), all. Этот параметр поддерживается только на Solaris платформе.
Примеры:
=> proc.cpu.util[,root] → Использование CPU по всем процессам работающими под "root" пользователем
=> proc.cpu.util[zabbix_server,zabbix] → Использование CPU по всем процессам zabbix_server работающими под пользователем zabbix

Возвращаемое значение основывается на использовании одного ядра CPU, в процентах. Например, утилизация CPU процесса полного использования двух ядер равна 200%.

Данные использования CPU собираются коллекторами, которые поддерживают максимально до 1024 уникальных (по имени, пользователю и командной строке) запросов. Запросы, к которым не было обращения в течении последних 24 часов, удаляются из коллектора.

Обратите внимание, что в случае когда агент скомпилирован на Solaris без поддержки зон, если задать параметр зона значением current (или по умолчанию), и запустить его на более новом Solaris, где зоны поддерживаются, тогда агент вернёт NOTSUPPORTED (агент не может ограничить результаты в пределах только текущей зоны). Однако, значение all в этом случае поддерживается.

Этот ключ поддерживается начиная с Zabbix 3.0.0 и также доступен на нескольких платформах (смотри Поддерживаемые элементы данных по платформам).
proc.mem[<имя>,<пользователь>,<режим>,<cmdline>,<тип памяти>]
Количество памяти используемое процессом в байтах. Целое число имя - имя процесса (по умолчанию все процессы)
пользователь - имя пользователя (по умолчанию все пользователи)
режим - возможные значения:
avg, max, min, sum (по умолчанию)
cmdline - фильтр по командной строке (является регулярным выражением)
тип памяти - тип памяти используемый процессом.
Примеры:
=> proc.mem[,root] - память используемая всеми процессами запущенными под пользователем "root"
=> proc.mem[zabbix_server,zabbix] - память используемая всеми процессами zabbix_server запущенными под пользователем zabbix
=> proc.mem[,oracle,max,oracleZABBIX] - максимальное значение используемой памяти процессами запущенными под пользователем oracle и имеющими oracleZABBIX в содержимом командной строки

Обратите внимание: Когда несколько процессов используют разделяемую память, сумма памяти используемой процессами в результате может быть большой, нереальной величиной.

Смотрите заметки по выбору процессов с параметрами имя и cmdline (специфика для Linux).

Когда этот элемент данных вызывается с командной строки и содержит параметр командной строки (например, при использовании тестового режима агента: zabbix_agentd -t proc.num[,,,apache2]), будет засчитан один дополнительный процесс, так как агент посчитает самого себя.

Параметр тип памяти поддерживается на нескольких платформах начиная с Zabbix 3.0.0.
proc.num[<имя>,<пользователь>,<состояние>,<cmdline>,<зона>]
Количество процессов. Целое число имя - имя процесса (по умолчанию "все процессы")
пользователь - имя пользователя (по умолчанию "все пользователи")
состояние - возможные значения:
all (по умолчанию),
disk - непрерывный сон,
run - в процессе работы,
sleep - прерываемый сон,
trace - остановлен,
zomb - зомби
cmdline - фильтр по командной строке (является регулярным выражением)
зона - целевая зона: current (по умолчанию), all. Этот параметр поддерживается только на Solaris платформе.
Примеры ключей:
=> proc.num[,mysql] - количество процессов выполняемых под пользователем mysql
=> proc.num[apache2,www-data] - количество процессов apache2 выполняемых под пользователем www-data
=> proc.num[,oracle,sleep,oracleZABBIX] - количество процессов в спящем состоянии выполняемых под oracle и имеющих oracleZABBIX в содержимом командной строки

Смотрите заметки по выбору процессов с параметрами имя и cmdline (специфика для Linux).

В Windows, поддерживаются только параметры имя и пользователь.

Когда этот элемент данных вызывается с командной строки и содержит параметр командной строки (например, при использовании тестового режима агента: zabbix_agentd -t proc.num[,,,apache2]), будет засчитан один дополнительный процесс, так как агент посчитает самого себя.

Обратите внимание, что в случае когда агент скомпилирован на Solaris без поддержки зон, если задать параметр зона значением current (или по умолчанию), и запустить его на более новом Solaris, где зоны поддерживаются, тогда агент вернёт NOTSUPPORTED (агент не может ограничить результаты в пределах только текущей зоны). Однако, значение all в этом случае поддерживается.

Значения disk и trace для параметра state поддерживаются начиная с Zabbix 3.4.0.
sensor[устройство,сенсор,<режим>]
Чтение аппаратного сенсора. Число с плавающей точкой устройство - имя устройства
сенсор - имя сенсора
режим - возможные значения:
avg, max, min (если этот параметр не указан, то устройство и сенсор обрабатываются дословно).
В Linux 2.4, читается /proc/sys/dev/sensors.

Пример:
=> sensor[w83781d-i2c-0-2d,temp1]

До Zabbix 1.8.4, использовался формат sensor[temp1].
В Linux 2.6+, читается /sys/class/hwmon.

Более подробное описание смотрите у элемента данных сенсора в Linux.
В OpenBSD, читается MIB hw.sensors.

Примеры:
=> sensor[cpu0,temp0] - температура одного CPU
=> sensor[cpu[0-2]$,temp,avg] - средняя температура первых трех CPU

Поддерживается в OpenBSD Zabbix агентом начиная с версии 1.8.4.
system.boottime
Штамп времени (timestamp) загрузки системы. Целое число (UNIX timestamp)
system.cpu.discovery
Список найденных CPU/CPU ядер. Используется низкоуровневым обнаружением. Объект JSON Поддерживается на всех платформах с 2.4.0.
system.cpu.intr
Прерывания устройств. Целое число
system.cpu.load[<cpu>,<режим>]
Загрузка CPU. Число с плавающей точкой cpu - возможные значения:
all (по умолчанию), percpu (общая загрузка делится на количество CPU онлайн)
режим - возможные значения:
avg1 (усреднение за одну минуту, по умолчанию), avg5, avg15
Пример:
=> system.cpu.load[,avg5]

Параметр percpu поддерживается начиная с Zabbix 2.0.0.

Старое название: system.cpu.loadX
system.cpu.num[<тип>]
Количество CPU. Целое число тип - возможные значения:
online (по умолчанию), max
Пример:
=> system.cpu.num
system.cpu.switches
Количество переключений контекста. Целое число Старое название: system[switches]
system.cpu.util[<cpu>,<тип>,<режим>]
Утилизация CPU в процентах. Число с плавающей точкой cpu - номер CPU (по умолчанию все CPU)
тип - возможные значения:
idle, nice, user (по умолчанию), system (по умолчанию для Windows), iowait, interrupt, softirq, steal, guest (на ядре Linux 2.6.24 и выше), guest_nice (на ядре Linux 2.6.33 и выше). Параметры времени user и nice более не включают время guest и время guest_nice начиная с Zabbix 3.0.14, 3.4.5 и 4.0.0.
режим - возможные значения:
avg1 (усреднение за одну минуту, по умолчанию), avg5, avg15
Пример:
=> system.cpu.util[0,user,avg5]

Старое название: system.cpu.idleX, system.cpu.niceX, system.cpu.systemX, system.cpu.userX
system.hostname[<тип>]
Системное имя хоста. Строка тип (только для Windows, не должен использоваться на остальных системах) - возможные значения: netbios (по умолчанию) или host Получение значения либо функцией GetComputerName() (для netbios), либо функцией gethostname() (для host) в Windows и с помощью команды "hostname" на других системах.

Примеры возвращаемых значений:
в Linux:
=> system.hostname → linux-w7x1
=> system.hostname → www.zabbix.com
в Windows:
=> system.hostname → WIN-SERV2008-I6
=> system.hostname[host] → Win-Serv2008-I6LonG

Параметр тип поддерживется этим элементом данных начиная с версии 1.8.6.

Смотрите также более детальную информацию.
system.hw.chassis[<информация>]
Информация о шасси. Строка информация - одно из full (по умолчанию), model, serial, type или vendor Пример:
system.hw.chassis[full]
Hewlett-Packard HP Pro 3010 Small Form Factor PC CZXXXXXXXX Desktop]

Этот ключ зависит от наличия SMBIOS таблицы.
Будет выполнена попытка чтения из DMI таблицы с sysfs, если доступ к sysfs будет неудачным, тогда будет попытка чтения напрямую из памяти.

Требуются Права root, потому что значение читается из sysfs или памяти.

Поддерживается Zabbix агентом начиная с версии 2.0.
system.hw.cpu[<cpu>,<информация>]
Информация о CPU. Строка или целое число cpu - номер CPU или all (по умолчанию)
информация - возможные значения: full (по умолчанию), curfreq, maxfreq, model или vendor
Пример:
=> system.hw.cpu[0,vendor] → AuthenticAMD

Информация собирается из /proc/cpuinfo и из /sys/devices/system/cpu/[cpunum]/cpufreq/cpuinfo_max_freq.

Если указаны номер CPU и curfreq или maxfreq, то возвращается числовое значение (Гц).

Поддерживается Zabbix агентом начиная с версии 2.0.
system.hw.devices[<тип>]
Список PCI или USB устройств. Текст тип - pci (по умолчанию) или usb Пример:
=> system.hw.devices[pci] → 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge
[..]

Возвращает вывод утилит lspci или lsusb (выполняются без каких либо параметров)

Поддерживается Zabbix агентом начиная с версии 2.0.
system.hw.macaddr[<интерфейс>,<формат>]
Список MAC адресов. Строка интерфейс - all (по умолчанию) или регулярное выражение
формат - full (по умолчанию) или short
Список MAC адресов чьи имена интерфейсов совпадают с заданным в интерфейс регулярным выражением (all список всех интерфейсов).

Пример: => system.hw.macaddr["eth0$",full] => [eth0] 00:11:22:33:44:55

Если формат задан как short, имена интерфейсов и одинаковые MAC адреса не попадают в список.

Поддерживается Zabbix агентом начиная с версии 2.0.
system.localtime[<тип>]
Системное время. Целое число - с тип как utc

Строка - с тип как local.
utc - (по умолчанию) время с начала Эпохи (00:00:00 UTC, Январь 1, 1970), измеренное в секундах.
local - время в формате 'гггг-мм-дд,чч:мм:сс.ннн,+чч:мм'
Параметры для этого элемента данных поддерживаются начиная с версии 2.0.

Например:
=> system.localtime[local] → создайте элемент данных, используя этот ключ, и далее используйте его для отображения времени узла сети в элементе комплексного экрана Часы.
system.run[команда,<режим>]
Выполнение указанной команды на узле сети. Текст с результатом выполнения команды

1 - в режиме nowait (независимо от результата выполнения команды)
команда - выполняемая команда
режим - один из wait (по умолчанию, ожидать завершения выполнения), nowait (не ожидать)
Возвращается до 512КБ (64КБ до Zabbix 2.0.5), включая пробелы в конце, которые отрезаются.
Для корректной обработки, возвращаемые данные должны быть текстом.

Пример:
=> system.run[ls -l /] → подробный список файлов в папке root.

Обратите внимание: Для того чтобы включить этот функционал, в файле конфигурации агента должна быть указана опция EnableRemoteCommands=1.

Возвращаемое значение элемента данных является стандартным выводом совместно со стандартным выводом ошибок, которые получены от команды. Код выхода не проверяется.

Пустой результат разрешается начиная с 2.4.0.

Смотрите также: Выполнение команд.
system.stat[источник,<тип>]
Статистика системы. Целое число или число с плавающей точкой ent - количество процессорных единиц выделенных на ресурс (с плавающей точкой)
kthr,<тип> - информация о состояниях потоков ядра:
r - среднее количество запускаемых потоков ядра (дробное)
b - среднее количество потоков ядра помещенных в очередь ожидания Менеджера Виртуальный Памяти (с плавающей точкой)
memory,<тип> - информация о использовании виртуальной и реальной памяти:
avm - активные виртуальные страницы (целое)
fre - размер свободного списка (целое)
page,<тип> - информация об ошибках страниц и активности страниц:
fi - операции страничного ввода файлов в секунду (с плавающей точкой)
fo - операции страничного вывода файлов в секунду (с плавающей точкой)
pi - pages paged in from paging space (с плавающей точкой)
po - pages paged out to paging space (с плавающей точкой)
fr - pages freed (page replacement) (с плавающей точкой)
sr - количество сканированных страниц алгоритмом замещения страниц (с плавающей точкой)
faults,<тип> - соотношение ловушек и прерываний:
in - прерывания устройства (с плавающей точкой)
sy - системные вызовы (с плавающей точкой)
cs - переключения контекста потока ядра (с плавающей точкой)
cpu,<тип> - раздельное использование процессорного времени в процентах:
us - пользовательское время (с плавающей точкой)
sy - системное время (с плавающей точкой)
id - время простоя (с плавающей точкой)
wa - время простоя в ходе которого система обрабатывала запросы I/O диска/NFS (с плавающей точкой)
pc - количество использованных физических процессоров (с плавающей точкой)
ec - процентное соотношение размеченного занятого пространства (с плавающей точкой)
lbusy - показывает утилизация в процентах для логических процессор(ов), которая произошла при выполнении уровней пользователя и системы (с плавающей точкой)
app - отображает количество доступных физических процессоров в распределенном пуле (с плавающей точкой)
disk,<тип> - статистика о дисках:
bps - отображает суммарное количество данных переданных (чтением или записью) на диск в байтах в секунду (целое)
tps - показывает количество передач за секунду, которые произошли на физическом диске/ленте (с плавающей точкой)
Этот элемент данных поддерживается начиная с версии 1.8.1.
system.sw.arch
Информация о архитектуре программного обеспечения. Строка Пример:
=> system.sw.arch → i686

Для получения информации используется функция uname().

Поддерживается Zabbix агентом начиная с версии 2.0.
system.sw.os[<информация>]
Информация об операционной системе. Строка информация - возможные значения: full (по умолчанию), short или name Пример:
=> system.sw.os[short] → Ubuntu 2.6.35-28.50-generic 2.6.35.11

Информация получается с (обратите внимание, на то что не все файлы и опции представлены во всех дистрибутивах):
/proc/version (full)
/proc/version_signature (short)
Параметр PRETTY_NAME из /etc/os-release на системах, которые его поддерживают, или /etc/issue.net (name)

Поддерживается Zabbix агентом начиная с версии 2.0.
system.sw.packages[<пакет>,<менеджер>,<формат>]
Список установленных пакетов. Текст пакет - all (по умолчанию) или регулярное выражение
менеджер - all (по умолчанию) или конкретный менеджер пакетов
формат - full (по умолчанию) или short
Список (в алфавитном порядке) установленных пакетов имена которых совпадают с регулярным выражением заданным в пакет (all списки всех).

Пример:
=> system.sw.packages[mini,dpkg,short]
→ python-minimal, python2.6-minimal, ubuntu-minimal

Поддерживаемые менеджеры пакетов (выполняемые команды):
dpkg (dpkg --get-selections)
pkgtool (ls /var/log/packages)
rpm (rpm -qa)
pacman (pacman -Q)

Если указан формат равный full, пакеты группируются по менеджерам пакетов (каждый менеджер с отдельной строки, которая начинается с его имени заключенном в квадратные скобки).
Если указан формат равный short, пакеты не группируются и отображаются одной строкой.

Поддерживается Zabbix агентом начиная с версии 2.0.
system.swap.in[<устройство>,<тип>]
Статистика файла подкачки в (с устройства в память). Целое число устройство - устройство используемое для файла подкачки (по умолчанию all)
тип - возможные значения:
count (количество swapins), sectors (секторов swapped in), pages (страниц swapped in). Смотрите поддержку по платформам для получения деталей по умолчаниям.
Пример:
=> system.swap.in[,pages]

Источником этой информации является:
/proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
/proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
system.swap.out[<устройство>,<тип>]
Статистика файла подкачки из (из памяти в устройство). Целое число. устройство - устройство используемое для файла подкачки (по умолчанию all)
тип - возможные значения:
count (количество swapouts), sectors (секторов swapped out), pages (страниц swapped out). Смотрите поддержку по платформам для получения деталей по умолчаниям.
Пример:
=> system.swap.out[,pages]

Источником этой информации является:
/proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
/proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
system.swap.size[<устройство>,<тип>]
Размер файла подкачки в байтах или процентах от общего размера. Целое число - для количества байт

Число с плавающей точкой - для процентов.
устройство - устройство используемое для файла подкачки (по умолчанию all)
тип - возможные значения:
free (свободно в файле подкачки, по умолчанию), pfree (свободно в файле подкачки, в процентах), pused (используемое место в файле подкачки, в процентах), total (полный размер файла подкачки), used (используется места в файле подкачки)
Пример:
=> system.swap.size[,pfree] → свободно места в файле подкачки в процентах

Если устройство не указано, Zabbix агент будет брать во внимание только swap устройства (файлы), физическая память будет игнорироваться. Например, на Solaris системах команда swap -s включает часть физической памяти и swap устройства (в отличии от swap -l).

Обратите внимание, этот ключ может возвращать некорректные данные на виртуализированных (VMware ESXi, VirtualBox) Windows платформах. В этом случае используйте ключ perf_counter[\700(_Total)\702] для получения корректного использования файла подкачки в процентах.

Старое название: system.swap.free, system.swap.total
system.uname
Идентификация системы. Строка Пример возвращаемого значения (Unix):
FreeBSD localhost 4.2-RELEASE FreeBSD 4.2-RELEASE #0: Mon Nov i386

Пример возвращаемого значения (Windows):
Windows ZABBIX-WIN 6.0.6001 Microsoft® Windows Server® 2008 Standard Service Pack 1 x86

В Unix начиная с Zabbix 2.2.0 значение этого элемента извлекается при помощи системного вызова uname(). Ранее эта информация запрашивалась с помощью системного вызова "uname -a". Значение этого элемента данных может отличаться от вывода "uname -a" и может не включать дополнительную информацию, так как "uname -a" выводит информацию основываясь на других источниках.

В Windows начиная с Zabbix 3.0 значение этого элемента данных извлекается при помощи Win32_OperatingSystem и Win32_Processor классов WMI. Ранее эта информация запрашивалась при помощи непостоянных вызовов Windows API и недокументированных ключей реестра. Имя ОС (включая редакцию) может быть переведено на пользовательский язык интерфейса. Некоторые версии Windows содержат символы товарных знаков и дополнительные пробелы.

Обратите внимание, что этот элемент данных в Windows возвращает архитектуру ОС, тогда как в Unix он возвращает архитектуру CPU.
system.uptime
Время работы в секундах. Целое число При настройке элемент данных, используйте единицы измерения s или uptime для получения читаемых значений.
system.users.num
Количество пользователей находящихся в системе. Целое число Для получения значений используется команда who на стороне агента.
vfs.dev.discovery
Список блочных устройств и их типов. Используется низкоуровневым обнаружением. JSON объект Этот элемент данных поддерживается только на платформе Linux.

Поддерживается начиная с Zabbix 4.4.0.
vfs.dev.read[<устройство>,<тип>,<режим>]
Статистика чтения диска. Целое число при тип равном: sectors, operations, bytes

Число с плавающей точкой при тип равном: sps, ops, bps
устройство - дисковое устройство (по умолчанию all2)
тип - возможные значения:
sectors, operations, bytes, sps, ops, bps
Этот параметр необходимо указывать, т.к. умолчания отличаются для разных ОС.
sps, ops, bps соответствуют: секторам, операциям, байтам в секунду соответственно
режим - возможные значения:
avg1 (усреднение за минуту, по умолчанию), avg5 (усреднение за 5 минут), avg15 (усреднение за 15 минут).
Третий параметр поддерживается только, если тип один из: sps, ops, bps.
Значения по умолчанию параметра 'Тип' для различных ОС:
AIX - operations
FreeBSD - bps
Linux - sps
OpenBSD - operations
Solaris - bytes

Пример:
=> vfs.dev.read[,operations]

ops, bps и sps на поддерживаемых платформах ограничено 8 устройствами (7 отдельных устройств и одно all). Начиная с Zabbix 2.0.1 этот лимит увеличен до 1024 (1023 отдельных устройств и один для all).

По умолчанию используется all первым параметром, который возвращает суммарную статистику, включая: все блочные устройства такие как sda, sbd и их разделы sda1, sda2, sdb3 ... и несколько устройств (MD raid) на основе этих блочных устройств/разделов и логические разделы (LVM) на основе этих блочных устройств/разделов. В некоторых случаях возвращаемые значения следует рассматривать как относительные значения (изменяемые во времени), но не как абсолютные значения.

LVM поддерживается начиная с Zabbix 1.8.6.

До Zabbix 1.8.6, можно было использовать только относительные имена устройств (например, sda), начиная с 1.8.6 можно использовать опциональный префикс /dev/ (например, /dev/sda)

Старое название: io[*]
vfs.dev.write[<устройство>,<тип>,<режим>]
Статистика записи на диск. Целое число при тип равном: sectors, operations, bytes

Число с плавающей точкой при тип равном: sps, ops, bps
устройство - дисковое устройство (по умолчанию all1)
тип - возможные значения:
sectors, operations, bytes, sps, ops, bps
Этот параметр необходимо указывать, т.к. умолчания отличаются для разных ОС.
sps, ops, bps соответствуют: секторам, операциям, байтам в секунду соответственно
режим - возможные значения:
avg1 (усреднение за минуту, по умолчанию), avg5 (усреднение за 5 минут), avg15 (усреднение за 15 минут).
Третий параметр поддерживается только если тип один из: sps, ops, bps.
Значения по умолчанию параметра 'Тип' для различных ОС:
AIX - operations
FreeBSD - bps
Linux - sps
OpenBSD - operations
Solaris - bytes

Пример: => vfs.dev.write[,operations]

ops, bps и sps на поддерживаемых платформах ограничено 8 устройствами (7 отдельных устройств и одно all). Начиная с Zabbix 2.0.1 этот лимит увеличен до 1024 (1023 отдельных устройств и один для all).

По умолчанию используется all первым параметром, который возвращает суммарную статистику, включая: все блочные устройства такие как sda, sbd и их разделы sda1, sda2, sdb3 ... и несколько устройств (MD raid) на основе этих блочных устройств/разделов и логические разделы (LVM) на основе этих блочных устройств/разделов. В некоторых случаях возвращаемые значения следует рассматривать как относительные значения (изменяемые во времени), но не как абсолютные значения.

LVM поддерживается начиная с Zabbix 1.8.6.

До Zabbix 1.8.6, можно было использовать только относительные имена устройств (например, sda), начиная с 1.8.6 можно использовать опциональный префикс /dev/ (например, /dev/sda)

Старое название: io[*]
vfs.dir.count[директория,<regex_вкл>,<regex_искл>,<типы_вкл>,<типы_искл>,<макс_глубина>,<мин_размер>,<макс_размер>,<мин_возраст>,<макс_возраст>]
Количество записей в директории. Целое число директория - абсолютный путь к директории
regex_вкл - регулярное выражение описывающее включаемые файл, директорию и символическую ссылку (если пусто, включаются все файлы, директории и символические ссылки; пустая строка является значением по умолчанию)
regex_искл - регулярное выражение описывающее исключаемые файл, директорию и символическую ссылку (если пусто, ничего не исключать; пустая строка является значением по умолчанию)
типы_вкл - перечисление типов записей в директории, которые будут подсчитываться, возможные значения:
file - обычный файл, dir - поддиректория, sym - символическая ссылка, sock - соект, bdev - блочное устройство, cdev - устройство посимвольного ввода-вывода, fifo- FIFO, dev- синонимы к "bdev,cdev", all- все вышеупомянутые типы, т.е. "file,dir,sym,sock,bdev,cdev,fifo". Это значение по умолчанию, если параметр оставлен пустым. Несколько типов необходимо разделять запятой и весь список нужно заключать в кавычки "".
типы_искл - перечисление типов записей в директории, которые НЕ будут подчитываться, те же самые значения и синтаксис что и для <типы_вкл>. Если некоторые типы записей указаны как в <типы_вкл>, так и в <типы_искл>, записи этих типов в директории НЕ будут подсчитываться.
макс_глубина - максимальная глубина сканируемых поддиректорий. -1 (по умолчанию) - без ограничения, 0 - без проверки нижестоящих поддиректорий.
мин_размер - минимальный размер подсчитываемых файлов. Файлы, которые меньше этого значения не будут подсчитаны. Значение в байтах. Можно использовать суффиксы памяти.
макс_размер - максимальный размер подсчитываемых файлов. Файлы, которые больше этого значения не будут подсчитаны. Значение в байтах. Можно использовать суффиксы памяти.
мин_возраст - минимальный возраст подсчитываемой записи директории. Записи, которые изменены раньше не будут подсчитаны. Целочисленное значение в виде секунд. Можно использовать суффиксы времени.
макс_возраст - максимальный возраст подсчитываемой записи директории. Записи, которые настолько старые не будут подсчитаны (время модификации). Целочисленное значение в виде секунд. Можно использовать суффиксы времени.
Переменные сред, такие как %APP_HOME%, $HOME и %TEMP%, не поддерживаются.

Псевдо-директории "." и ".." никогда не учитываются.

Символические ссылки никогда проверяются для обхода директорий.

В Windows символические ссылки директорий пропускаются и жесткие ссылки учитываются лишь один раз.

regex_incl и regex_excl являются Perl совместимыми регулярными выражениями (PCRE). Оба параметра regex_вкл и regex_исклю применяются к файлам и директориям при вычислении общего размера, но игнорируются при выборе поддиректорий (если regex_вкл равен "(?i)^.+\.zip$" и макс_глубина не задана, тогда проход будет выполнен по всем поддиректориям, но учтены будут только файлы с типом zip ). Если имя файла совпадает как с regex_вкл, так и с regex_искл, такой файл не будет учитываться.

Время выполнения ограничено значением времени ожидания по умолчанию, которое равно 3 секундам (параметр "Timeout" в файле конфигурации агента). Та как обход большой директории может занять более длительное время чем время ожидания, тогда никакие данные не возвратятся и элемент данных отметится как "Не поддерживается". Частичный подсчет не возвращается.

При фильтрации по размеру только обычные файлы имеют осмысленные размеры. В Linux и BSD директории также имеют не нулевые размеры (в основном несколько Кб). Устройства имеют нулевые размеры, например, размер /dev/sda1 не влияет на соответствующий размер раздела. Поэтому, при использовании параметров <мин_размер> и <макс_размер> рекомендуется указать <типы_вкл> равным "file", чтобы избежать сюрпризов.

Примеры:
⇒ vfs.dir.count[/dev] - мониторинг количества устройств в /dev (Linux)
⇒ vfs.dir.count["C:\Users\ADMINI~1\AppData\Local\Temp"] - мониторинг количества файлов во временной директории (Windows)

Поддерживается начина с Zabbix 4.0.0.
vfs.dir.size[директория,<regex_вкл>,<regex_искл>,<режим>,<макс_глубина>]
Размер директории (в байтах). Целое число директория - абсолютный путь к директории
regex_вкл - регулярное выражение описывающее включаемые файл, директорию и символическую ссылку (если пусто, включаются все файлы, директории и символические ссылки; пустая строка является значением по умолчанию)
regex_искл - регулярное выражение описывающее исключаемые файл, директорию и символическую ссылку (если пусто, ничего не исключать; пустая строка является значением по умолчанию)
режим - возможные значения:
apparent (по умолчанию) - получение реальных размеров файлов вместо использования диска (работает как du -sb директория), disk - получение использования диска (работает как du -s -B1 директория). В отличии от du команды, элемент данных vfs.dir.size принимает во внимание скрытые файлы при вычислении размера директории (работает как du -sb .[^.]* * в пределах директории).
макс_глубина - максимальная глубина сканируемых поддиректорий. -1 (по умолчанию) - без ограничения, 0 - без проверки нижестоящих поддиректорий.
Подсчитываются только те директории к которым zabbix пользователь имеет по крайней мере права чтения.

В Windows любая символическая ссылка пропускается и жесткие ссылки принимаются во внимание только один раз.

При наличии больших директорий или медленных дисков этот элемент данных может превысить время ожидания из-за настройки Timeout в файлах конфигурации агента и сервера/прокси. При необходимости увеличьте эти значения времени ожидания.

Примеры:
⇒ vfs.dir.size[/tmp,log] - вычисление размеров всех файлов в /tmp, которые содержат в своём имени 'log'
⇒ vfs.dir.size[/tmp,log,^.+\.old$] - вычисление размеров всех файлов в /tmp, которые содержат в своём имени 'log', исключая файлы содержащие в своем имени '.old'

Ограничение размера файлов зависит от наличия поддержки больших файлов.

Поддерживается начиная с Zabbix 3.4.0.
vfs.file.cksum[файл]
Контрольная сумма файла, вычисленная по алгоритму используемом в UNIX cksum. Целое число файл - абсолютный путь к файлу Пример:
=> vfs.file.cksum[/etc/passwd]

Пример возвращаемого значения:
1938292000

Старое название: cksum

Ограничение размера файла зависит от поддержки больших файлов.
vfs.file.contents[файл,<кодировка>]
Получение содержимого файла. Текст файл - абсолютный путь к файлу
кодирока - идентификатор кодовой страницы
Возвращает пустую строку, если файл пустой или содержит только LF/CR символы.

Пример:
=> vfs.file.contents[/etc/passwd]

Этот элемент данных ограничен файлами не превышающими 64 КБайт.

Поддерживается Zabbix агентом начиная с версии 2.0.
vfs.file.exists[файл]
Проверка существования файла 0 - файл не найден

1 - обычный файл или ссылка (символическая или жесткая) на обычный файл существует.
файл - абсолютный путь к файлу Пример:
=> vfs.file.exists[/tmp/application.pid]

Возвращаемое значение зависит от того, что вернет S_ISREG POSIX макрос.

Ограничение размера файла зависит от поддержки больших файлов.
vfs.file.md5sum[файл]
MD5 контрольная сумма файла Строка (MD5 хэш файла) файл -абсолютный путь к файлу Пример:
=> vfs.file.md5sum[/usr/local/etc/zabbix_agentd.conf]

Пример возвращаемого значения:
b5052decb577e0fffd622d6ddc017e82

Ограничение (64МБ) на размер файла для этого элемента данных удалено в версии 1.8.6.

Ограничение размера файла зависит от поддержки больших файлов.
vfs.file.regexp[файл,регулярное выражение,<кодировка>,<начальная строка>,<конечная строка>,<вывод>]
Поиск строки в файле. Строка содержащая совпадающую подстроку или то, что определено в дополнительном параметре вывод. файл - абсолютный путь к файлу
регулярное выражение - Perl совместимое регулярное выражение (PCRE) или расширенное POSIX регулярное выражение до Zabbix 3.4
кодировка - идентификатор кодовой страницы
начальная строка - номер первой строки для поиска (по умолчанию, первая строка файла).
конечная строка - номер последней строки для поиска (по умолчанию, последняя строка файла).
вывод - дополнительный шаблон форматирования вывода.
\0 -управляющая последовательность заменяется найденным текстом, тогда
\N (где N=1..9) - управляющая последовательность заменяется N-нной совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
Возвращается только первая совпавшая строка.
Будет возвращена пустая строка, если не найдено совпадений с выражением.

Извлечение содержимого при использовании параметра вывод выполняется агентом.

Параметры начальная строка, конечная строка и вывод поддерживаются начиная с версии 2.2.

Примеры:
=> vfs.file.regexp[/etc/passwd,zabbix]
=> vfs.file.regexp[/path/to/some/file,”([0-9]+)$”,,3,5,\1]
=> vfs.file.regexp[/etc/passwd,^zabbix:.:([0-9]+),,,,\1] → получение ID пользователя zabbix
vfs.file.regmatch[файл,регулярное выражение,<кодировка>,<начальная строка>,<конечная строка>]
Поиск строки в файле. 0 - совпадение не найдено

1 - найдено
файл - абсолютный путь к файлу
регулярное выражение - Perl совместимое регулярное выражение (PCRE) или расширенное POSIX регулярное выражение до Zabbix 3.4
кодировка - идентификатор кодовой страницы
начальная строка - номер первой строки для поиска (по умолчанию, первая строка файла).
конечная строка - номер последней строки для поиска (по умолчанию, последняя строка файла).
Параметры начальная строка, конечная строка поддерживаются с Zabbix 2.2.

Например: => vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[файл]
Размер файла (в байтах). Целое число файл - абсолютный путь к файлу Пользователь zabbix должен иметь права на чтение файла

Например:
=> vfs.file.size[/var/log/syslog]

Ограничение размера файла зависит от поддержки больших файлов.
vfs.file.time[файл,<режим>]
Информация о времени файла. Целое число (Unix timestamp) файл - полный путь к файлу
режим - возможные значения:
modify (по умолчанию) - время последней модификации содержимого файла, access - время последнего чтения файла, change - время последнего изменения свойств файла
Пример:
=> vfs.file.time[/etc/passwd,modify]

Ограничение размера файла зависит от поддержки больших файлов.
vfs.fs.discovery
Список примонтированных файловых систем. Используется низкоуровневым обнаружением. JSON объект Поддерживается Zabbix агентом начиная с версии 2.0.

Макрос {#FSDRIVETYPE} поддерживается в Windows начиная с Zabbix агента версии 3.0.
vfs.fs.get
Список подключенных файловых систем, их типы, дисковое пространство и статистика inode. Может использоваться для низкоуровневого обнаружения. JSON объект Поддерживается, начиная с Zabbix агента версии 4.4.5.
vfs.fs.inode[fs,<режим>]
Количество или процент inodes. Целое число - для количества

Число с плавающей точной - для процентов
fs - файловая система
режим - возможные жначения:
total (по умолчанию), free, used, //pfree // (свободно, в процентах), pused (использовано, в процентах)
Пример:
=> vfs.fs.inode[/,pfree]

Старое название: vfs.fs.inode.free[*], vfs.fs.inode.pfree[*], vfs.fs.inode.total[*]
vfs.fs.size[fs,<режим>]
Размер диска в байтах или процентах от от общего размера. Целое число - для байт

Число с плавающей точкой - для процентов.
fs - файловая система
режим - возможные значения:
total (по умолчанию), free, used, pfree (доступно, в процентах), pused (использовано, в процентах)
В случае примонтированного раздела, будет возвращен размер диска локального файла системы.

Пример:
=> vfs.fs.size[/tmp,free]

Зарезервированное место на файловой системе принимается во внимание и не включено при использовании режима free.

Старые названия: vfs.fs.free[*], vfs.fs.total[*], vfs.fs.used[*], vfs.fs.pfree[*], vfs.fs.pused[*]
vm.memory.size[<режим>]
Размер памяти в байтах или в процентах от общего количества. Целое число - для байт

Число с плавающей точкой - для процентов.
режим - возможные значения:
total (по умолчанию), active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired, used, pused (использовано, в процентах), available, pavailable (доступно, в процентах)
Этот элемент данных принимает три категории параметров:

1) total - общего количества памяти.
2) специфичные для платформ типы памяти: active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired.
3) оценка на уровне пользователя как много памяти используется и доступно: used, pused, available, pavailable.

Смотрите более подробное описание параметров vm.memory.size.

Старые названия: vm.memory.buffers, vm.memory.cached, vm.memory.free, vm.memory.shared, vm.memory.total
web.page.get[хост,<путь>,<порт>]
Получение содержимого веб-страницы. Исходная веб-страница как текст (включая заголовки) хост - имя хоста
путь - путь к HTML документу (по умолчанию /)
порт - номер порта (по умолчанию 80)
Возвращает пустую строку при ошибке.

Например:
=> web.page.get[www.zabbix.com,index.php,80]
web.page.perf[хост,<путь>,<порт>]
Время полной загрузки веб-страницы (в секундах). Число с плавающей точкой хост - имя хоста
путь - путь к HTML документу (по умолчанию /)
порт - номер порта (по умолчанию 80)
Возвращает 0 при ошибке.

Например:
=> web.page.perf[www.zabbix.com,index.php,80]
web.page.regexp[хост,<путь>,<порт>,регулярное выражение,<длина>,<вывод>]
Поиск строки на веб-странице. Совпадающая строка, или как указан опциональный параметр вывод хост - имя хоста
путь - путь к HTML документу (по умолчанию - /)
порт - номер порта (по умолчанию - 80)
регулярное выражение - Perl совместимое регулярное выражение (PCRE) или расширенное POSIX регулярное выражение до Zabbix 3.4
длина - максимальное количество возвращаемых символов
вывод - дополнительный шаблон форматирования вывода. \0 -управляющая последовательность заменяется найденным текстом, тогда \N (где N=1..9) - управляющая последовательность заменяется N-нной совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
Возвращается пустая строка, если нет совпадений или при ошибке.

Извлечение содержимого согласно дополнительного параметра вывод осуществляется агентом.

Параметр вывод поддерживается начиная с версии 2.2.

Пример:
=> web.page.regexp[www.zabbix.com,index.php,80,OK,2]
zabbix.stats[<ip>,<порт>]
Возвращает внутренние метрики удалённого Zabbix сервера или прокси. JSON объект ip - список IP/DNS/сетевой маски опрашиваемых удалённо серверов / прокси (по умолчанию 127.0.0.1)
порт - порт опрашиваемого удаленно сервера / прокси (по умолчанию 10051)
Обратите внимание, что запрос статистики будет приниматься только с адресов, которые перечислены в параметре 'StatsAllowedIP' сервера / прокси на удаленном экземпляре.

Этим элементом данных возвращается выбранный список внутренних метрик. Для получения более подробных сведений смотрите удалённый мониторинг статистики Zabbix.
zabbix.stats[<ip>,<порт>,queue,<от>,<до>]
Возвращает количество наблюдаемых элементов данных в очереди, которые задерживаются на удаленном Zabbix сервере или прокси. JSON объект ip - список IP/DNS/сетевой маски опрашиваемых удалённо серверов / прокси (по умолчанию 127.0.0.1)
порт - порт опрашиваемого удаленно сервера / прокси (по умолчанию 10051)
queue - константа (используется как есть)
от - с задержкой по крайней мере (по умолчанию от 6 секунд)
до - с задержкой не более (по умолчанию до бесконечности)
Обратите внимание, что запрос статистики будет приниматься только с адресов, которые перечислены в параметре 'StatsAllowedIP' сервера / прокси на удаленном экземпляре.

Заметка специфики для Linux. Zabbix агент должен иметь только права чтения файловой системы /proc. Патчи к ядру для ограничения прав непривилегированных пользователей вы можете найти на странице www.grsecurity.org.

Доступные кодировки

Параметр кодировка используется для того, чтобы указать кодировку при обработке соответствующих проверок элементов данных, так чтобы полученные данные не были повреждены. Для получения списка поддерживаемых кодировок (идентификаторов кодовых страниц), пожалуйста, обратитесь к соответствующей документации, такой как libiconv (GNU Project) или Microsoft Windows SDK документации по "Идентификаторам кодовых страницы".

Если задана пустая кодировка, тогда по умолчанию используются UTF-8 (языковой стандарт по умолчанию для новых Unix/Linux дистрибутивов, смотрите настройки вашей системы) или ANSI с определенным расширением в системе (Windows).

Поиск проблем с элементами данных агента

  1. Если используются с пассивным агентов, значение Timeout конфигурации сервера, возможно, потребуется выше, чем Timeout в файле конфигурации агента. В противном случае элемент данных может не возвращать никаких значений по причине того, что запрос сервера к агенту превысит время ожидания раньше агента.

Mandatory and optional parameters

Parameters without angle brackets are mandatory. Parameters marked with angle brackets < > are optional.

Usage with command-line utilities

Note that when testing or using item keys with zabbix_agentd or zabbix_get from the command line you should consider shell syntax too.

For example, if a certain parameter of the key has to be enclosed in double quotes you have to explicitly escape double quotes, otherwise they will be trimmed by the shell as special characters and will not be passed to the Zabbix utility.

Examples:

$ zabbix_agentd -t 'vfs.dir.count[/var/log,,,"file,dir",,0]'
       
       $ zabbix_agentd -t vfs.dir.count[/var/log,,,\"file,dir\",,0]