en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	### Examples
ru	### Примеры

en-us	#### Examples
ru	#### Примеры

en-us	#### Examples
ru	#### Примеры

en-us	#### Examples
ru	#### Примеры

en-us	#### Examples
ru	#### Примеры

en-us	#### Examples
ru	#### Примеры

en-us	#### - Examples and dealing with errors  To get a warning when you are about to run out of free disk space on your host, you may use a trigger expression like this:      timeleft(/host/vfs.fs.size[/,free],1h,0)}<1h  However, error code -1 may come into play and put your trigger in a problem state. Generally it's good because you get a warning that your predictions don't work correctly and you should look at them more thoroughly to find out why. But sometimes it's bad because -1 can simply mean that there was no data about the host free disk space obtained in the last hour. If you are getting too many false positive alerts, consider using more complicated trigger expression [^5]:      timeleft(/host/vfs.fs.size[/,free],1h,0)<1h and timeleft(/host/vfs.fs.size[/,free],1h,0)<>-1  The situation is a bit more difficult with **forecast**. First of all, -1 may or may not put the trigger in a problem state depending on whether you have expression like `forecast(/host/item,(...))<...` or like `forecast(/host/item,(...))>...`  Furthermore, -1 may be a valid forecast if it's normal for the item value to be negative. But probability of this situation in the real world situation is negligible (see [how](/manual/config/triggers/expression) the operator **=** works). So add `... or forecast(/host/item,(...))=-1` or `... and forecast(/host/item,(...))<>-1` if you want or don't want to treat -1 as a problem respectively.  [^1]: For example, a simple trigger like     `timeleft(/host/item,1h,X) < 1h` may go into problem state when the     item value approaches X and then suddenly recover once value X is     reached. If the problem is item value being below X, use:     `last(/host/item) < X or timeleft(/host/item,1h,X) < 1h` If the     problem is item value being above X, use:     `last(/host/item) > X or timeleft(/host/item,1h,X) < 1h`  [^2]: Polynomial degree can be from 1 to 6, *polynomial1* is equivalent     to *linear*. However, use higher degree polynomials [with     caution](https://en.wikipedia.org/wiki/Runge's_phenomenon). If the     evaluation period contains less points than needed to determine     polynomial coefficients, polynomial degree will be lowered (e.g.,     *polynomial5* is requested, but there are only 4 points, therefore     *polynomial3* will be fitted).  [^3]: For example, fitting *exponential* or *power* functions involves     calculating log() of item values. If data contains zeros or negative     numbers, you will get an error since log() is defined for positive     values only.  [^4]: For *linear*, *exponential*, *logarithmic* and *power* fits all     necessary calculations can be written explicitly. For *polynomial*     only *value* can be calculated without any additional steps.     Calculating *avg* involves computing polynomial antiderivative     (analytically). Computing *max*, *min* and *delta* involves     computing polynomial derivative (analytically) and finding its roots     (numerically). Solving f(t) = 0 involves finding polynomial roots     (numerically).  [^5]: But in this case -1 can cause your trigger to recover from the     problem state. To be fully protected use:     `timeleft(/host/vfs.fs.size[/,free],1h,0)<1h and ({TRIGGER.VALUE}=0 and timeleft(/host/vfs.fs.size[/,free],1h,0)<>-1 or {TRIGGER.VALUE}=1)`
ru	#### - Примеры и обработка ошибок  Для получения предупреждения о том, что у вашего узла сети скоро закончится свободное дисковое пространство, вы можете использовать следующее выражение триггера:      timeleft(/узел сети/vfs.fs.size[/,free],1h,0)}<1h  Однако, может появиться код ошибки -1 и перевести ваш триггер в состояние проблемы. Вообще говоря, это неплохо, потому что вы получите предупреждение о том, что ваши прогнозирования не работают должным образом, и вам стоит обратить на них внимание, чтобы разобраться почему. Но иногда это плохо, потому что -1 может просто означать, что за последний час не было получено никаких данных о свободном дисковом пространстве данного узла сети. Если вы получаете много сообщений о ложных тревогах, подумайте об использовании более сложного выражения[^5] триггера:      timeleft(/узел сети/vfs.fs.size[/,free],1h,0)<1h and timeleft(/узел сети/vfs.fs.size[/,free],1h,0)<>-1  С **forecast** ситуация немного сложнее. Начнём с того, что -1 может перевести, а может и не перевести триггер в состояние проблемы в зависимости от вашего выражения триггера, которое может быть вроде `forecast(/узел сети/элемент данных,(...))<...` или наподобие `forecast(/узел сети/элемент данных,(...))>...`  Более того, -1 может быть вполне корректным результатом прогнозирования, если прогнозируемый элемент данных может принимать отрицательные значения. Но вероятность возникновения такой ситуации в реальных условиях пренебрежительно мала (смотрите, [как](/manual/config/triggers/expression) работает оператор **=**). Поэтому добавьте `... or forecast(/узел сети/элемент данных,(...))=-1` или `... and forecast(/узел сети/элемент данных,(...))<>-1`, если вы соответсвенно хотите или, наоборот, не хотите рассматривать -1 как проблему.  [^1]: Например, простой триггер такой как `timeleft(/узел сети/элемент данных,1h,X) < 1h` может перейти в состояние проблемы, когда элемент данных приближается к X, и неожиданно "самоустраниться", как только значение X достигнуто. Если проблема выражается в том, что значение элемента данных меньше X, используйте: `last(/узел сети/элемент данных) < X or timeleft(/узел сети/элемент данных,1h,X) < 1h`. Если проблема заключается в том, что значение элемент данных больше X, используйте: `last(/узел сети/элемент данных) > X or timeleft(/узел сети/элемент данных,1h,X) < 1h`  [^2]: Степень многочлена может быть от 1 до 6, при этом функция *polynomial1* равнозначна *linear*. Однако, использовать полиномы высоких степеней следует [с осторожностью](https://ru.wikipedia.org/wiki/Феномен_Рунге). Если период вычисления содержит меньше точек, чем требуется для определения коэффициентов полинома, степень полинома понизится (например, запрашивается *polynomial5*, но есть только 4 точки, поэтому для аппроксимации будет использована *polynomial3*).  [^3]: Например, построение экспоненциальной (*exponential*) и степенной (*power*) функций требует логарифмических вычислений значений элемента данных. Если данные содержат нулевые или отрицательные числа, вы получите сообщение об ошибке, поскольку вычисление логарифма возможно только при положительных значениях.  [^4]: При аппроксимации *linear*, *exponential*, *logarithmic* и *power* выражений все необходимые вычисления можно написать в явном виде. При *polynomial* можно вычислить только *value* без дополнительных шагов. Вычисление *avg* включает в себя вычисление первообразной полинома (аналитически). Вычисление *max*, *min* и *delta* включает в себя вычисление производной полинома (аналитически) и поиск его корней (численно). Решение f(t) = 0 требует нахождения корней полинома (численно).  [^5]: Но в этом случае -1 может восстановить триггер из состояния проблемы. Для полной защищённости используйте: `timeleft(/узел сети/vfs.fs.size[/,free],1h,0)<1h and ({TRIGGER.VALUE}=0 and timeleft(/узел сети/vfs.fs.size[/,free],1h,0)<>-1 or {TRIGGER.VALUE}=1)`

en-us	##### Examples  **Example 1**  The example demonstrates how to run Zabbix server with MySQL database support, Zabbix web interface based on the Nginx web server and Zabbix Java gateway.  1\. Create network dedicated for Zabbix component containers:      docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net  2\. Start empty MySQL server instance      docker run --name mysql-server -t \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           --network=zabbix-net \           --restart unless-stopped \           -d mysql:8.0 \           --character-set-server=utf8 --collation-server=utf8_bin \           --default-authentication-plugin=mysql_native_password  3\. Start Zabbix Java gateway instance      docker run --name zabbix-java-gateway -t \           --network=zabbix-net \           --restart unless-stopped \           -d zabbix/zabbix-java-gateway:alpine-6.0-latest  4\. Start Zabbix server instance and link the instance with created MySQL server instance      docker run --name zabbix-server-mysql -t \           -e DB_SERVER_HOST="mysql-server" \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \           --network=zabbix-net \           -p 10051:10051 \           --restart unless-stopped \           -d zabbix/zabbix-server-mysql:alpine-6.0-latest  ::: noteclassic Zabbix server instance exposes 10051/TCP port (Zabbix trapper) to host machine. :::  5\. Start Zabbix web interface and link the instance with created MySQL server and Zabbix server instances      docker run --name zabbix-web-nginx-mysql -t \           -e ZBX_SERVER_HOST="zabbix-server-mysql" \           -e DB_SERVER_HOST="mysql-server" \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           --network=zabbix-net \           -p 80:8080 \           --restart unless-stopped \           -d zabbix/zabbix-web-nginx-mysql:alpine-6.0-latest  ::: noteclassic Zabbix web interface instance exposes 80/TCP port (HTTP) to host machine. :::  **Example 2**  The example demonstrates how to run Zabbix server with PostgreSQL database support, Zabbix web interface based on the Nginx web server and SNMP trap feature.  1\. Create network dedicated for Zabbix component containers:      docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net  2\. Start empty PostgreSQL server instance      docker run --name postgres-server -t \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           --network=zabbix-net \           --restart unless-stopped \           -d postgres:latest  3\. Start Zabbix snmptraps instance      docker run --name zabbix-snmptraps -t \           -v /zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \           -v /var/lib/zabbix/mibs:/usr/share/snmp/mibs:ro \           --network=zabbix-net \           -p 162:1162/udp \           --restart unless-stopped \           -d zabbix/zabbix-snmptraps:alpine-6.0-latest  ::: noteclassic Zabbix snmptrap instance exposes the 162/UDP port (SNMP traps) to host machine. :::  4\. Start Zabbix server instance and link the instance with created PostgreSQL server instance      docker run --name zabbix-server-pgsql -t \           -e DB_SERVER_HOST="postgres-server" \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           -e ZBX_ENABLE_SNMP_TRAPS="true" \           --network=zabbix-net \           -p 10051:10051 \           --volumes-from zabbix-snmptraps \           --restart unless-stopped \           -d zabbix/zabbix-server-pgsql:alpine-6.0-latest  ::: noteclassic Zabbix server instance exposes the 10051/TCP port (Zabbix trapper) to host machine. :::  5\. Start Zabbix web interface and link the instance with created PostgreSQL server and Zabbix server instances      docker run --name zabbix-web-nginx-pgsql -t \           -e ZBX_SERVER_HOST="zabbix-server-pgsql" \           -e DB_SERVER_HOST="postgres-server" \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           --network=zabbix-net \           -p 443:8443 \           -p 80:8080 \           -v /etc/ssl/nginx:/etc/ssl/nginx:ro \           --restart unless-stopped \           -d zabbix/zabbix-web-nginx-pgsql:alpine-6.0-latest  ::: noteclassic Zabbix web interface instance exposes the 443/TCP port (HTTPS) to host machine.\ Directory */etc/ssl/nginx* must contain certificate with required name. :::  **Example 3**  The example demonstrates how to run Zabbix server with MySQL database support, Zabbix web interface based on the Nginx web server and Zabbix Java gateway using `podman` on Red Hat 8.  1\. Create new pod with name `zabbix` and exposed ports (web-interface, Zabbix server trapper):      podman pod create --name zabbix -p 80:8080 -p 10051:10051  2\. (optional) Start Zabbix agent container in `zabbix` pod location:      podman run --name zabbix-agent \         -e ZBX_SERVER_HOST="127.0.0.1,localhost" \         --restart=always \         --pod=zabbix \         -d registry.connect.redhat.com/zabbix/zabbix-agent-60:latest  3\. Create `./mysql/` directory on host and start Oracle MySQL server 8.0:      podman run --name mysql-server -t \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           -v ./mysql/:/var/lib/mysql/:Z \           --restart=always \           --pod=zabbix \           -d mysql:8.0 \           --character-set-server=utf8 --collation-server=utf8_bin \           --default-authentication-plugin=mysql_native_password  4\. Start Zabbix server container:      podman run --name zabbix-server-mysql -t \                       -e DB_SERVER_HOST="127.0.0.1" \                       -e MYSQL_DATABASE="zabbix" \                       -e MYSQL_USER="zabbix" \                       -e MYSQL_PASSWORD="zabbix_pwd" \                       -e MYSQL_ROOT_PASSWORD="root_pwd" \                       -e ZBX_JAVAGATEWAY="127.0.0.1" \                       --restart=always \                       --pod=zabbix \                       -d registry.connect.redhat.com/zabbix/zabbix-server-mysql-60  5\. Start Zabbix Java Gateway container:      podman run --name zabbix-java-gateway -t \           --restart=always \           --pod=zabbix \           -d registry.connect.redhat.com/zabbix/zabbix-java-gateway-60  6\. Start Zabbix web-interface container:      podman run --name zabbix-web-mysql -t \                       -e ZBX_SERVER_HOST="127.0.0.1" \                       -e DB_SERVER_HOST="127.0.0.1" \                       -e MYSQL_DATABASE="zabbix" \                       -e MYSQL_USER="zabbix" \                       -e MYSQL_PASSWORD="zabbix_pwd" \                       -e MYSQL_ROOT_PASSWORD="root_pwd" \                       --restart=always \                       --pod=zabbix \                       -d registry.connect.redhat.com/zabbix/zabbix-web-mysql-60  ::: noteclassic Pod `zabbix` exposes 80/TCP port (HTTP) to host machine from 8080/TCP of `zabbix-web-mysql` container. :::
ru	##### Примеры  **Пример 1**  В этом примере продемонстрировано, как запустить Zabbix сервер с поддержкой базы данных MySQL, веб-интерфейсом Zabbix на основе веб-сервера Nginx и Zabbix Java gateway.  1\. Создайте выделенную сеть для контейнеров с компонентами Zabbix:      docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net  2\. Запустите пустой экземпляр MySQL сервера      docker run --name mysql-server -t \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           --network=zabbix-net \           --restart unless-stopped \           -d mysql:8.0 \           --character-set-server=utf8 --collation-server=utf8_bin \           --default-authentication-plugin=mysql_native_password  3\. Запустите экземпляр Zabbix Java gateway      docker run --name zabbix-java-gateway -t \           --network=zabbix-net \           --restart unless-stopped \           -d zabbix/zabbix-java-gateway:alpine-6.0-latest  4\. Запустите экземпляр Zabbix сервера и слинкуйте этот экземпляр с уже созданным экземпляром MySQL сервера      docker run --name zabbix-server-mysql -t \           -e DB_SERVER_HOST="mysql-server" \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \           --network=zabbix-net \           -p 10051:10051 \           --restart unless-stopped \           -d zabbix/zabbix-server-mysql:alpine-6.0-latest  ::: noteclassic Экземпляр Zabbix сервера открывает порт 10051/TCP (Zabbix траппер) на узле. :::  5\. Запустите экземпляр веб-интерфейса Zabbix и слинкуйте этот экземпляр с уже созданными экземплярами MySQL сервера и Zabbix сервера      docker run --name zabbix-web-nginx-mysql -t \           -e ZBX_SERVER_HOST="zabbix-server-mysql" \           -e DB_SERVER_HOST="mysql-server" \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           --network=zabbix-net \           -p 80:8080 \           --restart unless-stopped \           -d zabbix/zabbix-web-nginx-mysql:alpine-6.0-latest  ::: noteclassic Экземпляр веб-интерфейса Zabbix открывает 80/TCP порт (HTTP) на узле. :::  **Пример 2**  В этом примере продемонстрировано, как запустить Zabbix сервер с поддержкой базы данных PostgreSQL,  веб-интерфейсом Zabbix на основе веб-сервера Nginx и с функцией приёма SNMP трапов.  1\. Создайте выделенную сеть для контейнеров с компонентами Zabbix:      docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net  2\. Запустите пустой экземпляр PostgreSQL сервера      docker run --name postgres-server -t \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           --network=zabbix-net \           --restart unless-stopped \           -d postgres:latest  3\. Запустите экземпляр Zabbix snmptraps      docker run --name zabbix-snmptraps -t \           -v /zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \           -v /var/lib/zabbix/mibs:/usr/share/snmp/mibs:ro \           --network=zabbix-net \           -p 162:1162/udp \           --restart unless-stopped \           -d zabbix/zabbix-snmptraps:alpine-6.0-latest  ::: noteclassic Экземпляр Zabbix snmptrap открывает порт 162/UDP (SNMP трапы) на узле. :::  4\. Запустите экземпляр Zabbix сервера и слинкуйте этот экземпляр с уже созданным экземпляром PostgreSQL сервера      docker run --name zabbix-server-pgsql -t \           -e DB_SERVER_HOST="postgres-server" \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           -e ZBX_ENABLE_SNMP_TRAPS="true" \           --network=zabbix-net \           -p 10051:10051 \           --volumes-from zabbix-snmptraps \           --restart unless-stopped \           -d zabbix/zabbix-server-pgsql:alpine-6.0-latest  ::: noteclassic Экземпляр Zabbix сервера открывает порт 10051/TCP (Zabbix траппер) к узлу. :::  5\. Запустите экземпляр веб-интерфейса Zabbix и слинкуйте этот экземпляр с уже созданными экземплярами PostgreSQL сервера и Zabbix сервера      docker run --name zabbix-web-nginx-pgsql -t \           -e ZBX_SERVER_HOST="zabbix-server-pgsql" \           -e DB_SERVER_HOST="postgres-server" \           -e POSTGRES_USER="zabbix" \           -e POSTGRES_PASSWORD="zabbix_pwd" \           -e POSTGRES_DB="zabbix" \           --network=zabbix-net \           -p 443:8443 \           -p 80:8080 \           -v /etc/ssl/nginx:/etc/ssl/nginx:ro \           --restart unless-stopped \           -d zabbix/zabbix-web-nginx-pgsql:alpine-6.0-latest  ::: noteclassic Экземпляр веб-интерфейса Zabbix открывает порт 443/TCP (HTTPS) на узле.\ Папка */etc/ssl/nginx* должна содержать сертификат с требуемым именем. :::  **Пример 3**  В этом примере продемонстрировано, как запустить Zabbix сервер с поддержкой базы данных MySQL, веб-интерфейсом Zabbix на основе веб-сервера Nginx и Zabbix Java gateway на Red Hat 8, используя `podman`.  1\. Создайте новую капсулу (pod) с именем `zabbix` и откройте порты (веб-интерфейс, траппер Zabbix сервера):      podman pod create --name zabbix -p 80:8080 -p 10051:10051  2\. (опционально) Запустите контейнер Zabbix агента в капсуле (pod) `zabbix`:      podman run --name zabbix-agent \         -e ZBX_SERVER_HOST="127.0.0.1,localhost" \         --restart=always \         --pod=zabbix \         -d registry.connect.redhat.com/zabbix/zabbix-agent-60:latest  3\. Создайте директорию `./mysql/` на узле и запустите Oracle MySQL сервер версии 8.0:      podman run --name mysql-server -t \           -e MYSQL_DATABASE="zabbix" \           -e MYSQL_USER="zabbix" \           -e MYSQL_PASSWORD="zabbix_pwd" \           -e MYSQL_ROOT_PASSWORD="root_pwd" \           -v ./mysql/:/var/lib/mysql/:Z \           --restart=always \           --pod=zabbix \           -d mysql:8.0 \           --character-set-server=utf8 --collation-server=utf8_bin \           --default-authentication-plugin=mysql_native_password  4\. Запустите контейнер Zabbix сервера:      podman run --name zabbix-server-mysql -t \                       -e DB_SERVER_HOST="127.0.0.1" \                       -e MYSQL_DATABASE="zabbix" \                       -e MYSQL_USER="zabbix" \                       -e MYSQL_PASSWORD="zabbix_pwd" \                       -e MYSQL_ROOT_PASSWORD="root_pwd" \                       -e ZBX_JAVAGATEWAY="127.0.0.1" \                       --restart=always \                       --pod=zabbix \                       -d registry.connect.redhat.com/zabbix/zabbix-server-mysql-60  5\. Запустите контейнер Zabbix Java Gateway:      podman run --name zabbix-java-gateway -t \           --restart=always \           --pod=zabbix \           -d registry.connect.redhat.com/zabbix/zabbix-java-gateway-60  6\. Запустите контейнер веб-интерфейса Zabbix:      podman run --name zabbix-web-mysql -t \                       -e ZBX_SERVER_HOST="127.0.0.1" \                       -e DB_SERVER_HOST="127.0.0.1" \                       -e MYSQL_DATABASE="zabbix" \                       -e MYSQL_USER="zabbix" \                       -e MYSQL_PASSWORD="zabbix_pwd" \                       -e MYSQL_ROOT_PASSWORD="root_pwd" \                       --restart=always \                       --pod=zabbix \                       -d registry.connect.redhat.com/zabbix/zabbix-web-mysql-60  ::: noteclassic Капсула (pod) `zabbix` открывает порт 80/TCP (HTTP) на узле через порт 8080/TCP контейнера `zabbix-web-mysql`. :::

en-us	#### Examples  Examples here illustrate how you can use macros in messages.
ru	#### Примеры  Приведённые здесь примеры иллюстрируют то, как вы можете использовать макросы в сообщениях.

en-us	#### Examples  Examples of [global scripts](/manual/web_interface/frontend_sections/administration/scripts#configuring_a_global_script) that may be used as remote commands in action operations.
ru	#### Примеры  Примеры [глобальных скриптов](/manual/web_interface/frontend_sections/administration/scripts#настройка-глобального-скрипта), которые можно использовать как удалённые команды в операциях к действиям.

en-us	#### Examples  Here are some code snippets showing how to add Zabbix protocol header to the data you want to send in order  to obtain the packet you should send to Zabbix so that it is interpreted correctly. These code snippets  assume that the data is not larger than 1GB, thus the large packet format is not used.  ##### Python    ```python packet = b"ZBXD\1" + struct.pack("<II", len(data), 0) + data ```  or  ```python def zbx_create_header(plain_data_size, compressed_data_size=None):     protocol = b"ZBXD"     flags = 0x01     if compressed_data_size is None:         datalen = plain_data_size         reserved = 0     else:         flags |= 0x02         datalen = compressed_data_size         reserved = plain_data_size     return protocol + struct.pack("<BII", flags, datalen, reserved)  packet = zbx_create_header(len(data)) + data ```  ##### Perl  ```perl my $packet = "ZBXD\1" . pack("(II)<", length($data), 0) . $data; ```  or  ```perl sub zbx_create_header($;$) {     my $plain_data_size = shift;     my $compressed_data_size = shift;      my $protocol = "ZBXD";     my $flags = 0x01;     my $datalen;     my $reserved;      if (!defined($compressed_data_size))     {         $datalen = $plain_data_size;         $reserved = 0;     }     else     {         $flags |= 0x02;         $datalen = $compressed_data_size;         $reserved = $plain_data_size;     }      return $protocol . chr($flags) . pack("(II)<", $datalen, $reserved); }  my $packet = zbx_create_header(length($data)) . $data; ```  ##### PHP  ```php $packet = "ZBXD\1" . pack("VV", strlen($data), 0) . $data; ```  or  ```php function zbx_create_header($plain_data_size, $compressed_data_size = null) {     $protocol = "ZBXD";     $flags = 0x01;     if (is_null($compressed_data_size))     {         $datalen = $plain_data_size;         $reserved = 0;     }     else     {         $flags |= 0x02;         $datalen = $compressed_data_size;         $reserved = $plain_data_size;     }     return $protocol . chr($flags) . pack("VV", $datalen, $reserved); }  $packet = zbx_create_header(strlen($data)) . $data; ```  ##### Bash    ```bash datalen=$(printf "%08x" ${#data}) datalen="\\x${datalen:6:2}\\x${datalen:4:2}\\x${datalen:2:2}\\x${datalen:0:2}" printf "ZBXD\1${datalen}\0\0\0\0%s" "$data" ```
ru	#### Примеры  Здесь представлены несколько фрагментов кода, демонстрирующих, как к тем данным, которые вы хотите отослать (переменная `data`), добавить заголовок протокола Zabbix, чтобы пакет, который вам нужно отправить в Zabbix, получился  таким, чтобы он правильно интерпретировался. Эти фрагменты кода подразумевают, что данные не превышают 1 ГБ, поэтому формат больших пакетов не используется.  ##### Python    ```python packet = b"ZBXD\1" + struct.pack("<II", len(data), 0) + data ```  или  ```python def zbx_create_header(plain_data_size, compressed_data_size=None):     protocol = b"ZBXD"     flags = 0x01     if compressed_data_size is None:         datalen = plain_data_size         reserved = 0     else:         flags |= 0x02         datalen = compressed_data_size         reserved = plain_data_size     return protocol + struct.pack("<BII", flags, datalen, reserved)  packet = zbx_create_header(len(data)) + data ```  ##### Perl  ```perl my $packet = "ZBXD\1" . pack("(II)<", length($data), 0) . $data; ```  или  ```perl sub zbx_create_header($;$) {     my $plain_data_size = shift;     my $compressed_data_size = shift;      my $protocol = "ZBXD";     my $flags = 0x01;     my $datalen;     my $reserved;      if (!defined($compressed_data_size))     {         $datalen = $plain_data_size;         $reserved = 0;     }     else     {         $flags |= 0x02;         $datalen = $compressed_data_size;         $reserved = $plain_data_size;     }      return $protocol . chr($flags) . pack("(II)<", $datalen, $reserved); }  my $packet = zbx_create_header(length($data)) . $data; ```  ##### PHP  ```php $packet = "ZBXD\1" . pack("VV", strlen($data), 0) . $data; ```  или  ```php function zbx_create_header($plain_data_size, $compressed_data_size = null) {     $protocol = "ZBXD";     $flags = 0x01;     if (is_null($compressed_data_size))     {         $datalen = $plain_data_size;         $reserved = 0;     }     else     {         $flags |= 0x02;         $datalen = $compressed_data_size;         $reserved = $plain_data_size;     }     return $protocol . chr($flags) . pack("VV", $datalen, $reserved); }  $packet = zbx_create_header(strlen($data)) . $data; ```  ##### Bash    ```bash datalen=$(printf "%08x" ${#data}) datalen="\\x${datalen:6:2}\\x${datalen:4:2}\\x${datalen:2:2}\\x${datalen:0:2}" printf "ZBXD\1${datalen}\0\0\0\0%s" "$data" ```

en-us	##### Examples  Let’s review two more practical examples of a LLD rule creation with the use of MBean. To understand the difference between a LLD rule collecting MBeans and a LLD rule collecting MBean attributes better please take a look at following table:  |   |   |   | |---|---|---| |**MBean1**|**MBean2**|**MBean3**| |MBean1Attribute1|MBean2Attribute1|MBean3Attribute1| |MBean1Attribute2|MBean2Attribute2|MBean3Attribute2| |MBean1Attribute3|MBean2Attribute3|MBean3Attribute3|
ru	##### Примеры  Давайте обратимся ещё к двум более практическим примерам создания правил LLD с применением MBean. Для лучшего понимания разницы между правилом LLD, собирающем объекты MBeans, и правилом LLD, собирающем атрибуты MBean, взгляните на следующую таблицу:  |   |   |   | |---|---|---| |**MBean1**|**MBean2**|**MBean3**| |MBean1Attribute1|MBean2Attribute1|MBean3Attribute1| |MBean1Attribute2|MBean2Attribute2|MBean3Attribute2| |MBean1Attribute3|MBean2Attribute3|MBean3Attribute3|

en-us	#### Examples  :::noteclassic The commands listed below are for Docker Compose V2. If you are using Docker Compose V1, replace `docker compose -f` with `docker-compose -f` :::  **Example 1**      # git checkout 6.0     # docker compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d  The command will download latest Zabbix 6.0 images for each Zabbix component and run them in detach mode.  ::: noteimportant Do not forget to download `.env_<type of component>` files from github.com official Zabbix repository with compose files. :::  **Example 2**      # git checkout 6.0     # docker compose -f ./docker-compose_v3_ubuntu_mysql_local.yaml up -d  The command will download base image Ubuntu 20.04 (focal), then build Zabbix 6.0 components locally and run them in detach mode.
ru	#### Примеры  :::noteclassic Ниже указаны команды для Docker Compose V2. Если вы используете Docker Compose V1, замените `docker compose -f` строкой `docker-compose -f` :::  **Пример 1**      # git checkout 6.0     # docker compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d  Эта команда загрузит последние образы Zabbix 6.0 для каждого из компонентов Zabbix и запустит их в detach режиме.  ::: noteimportant Не забудьте загрузить `.env_<тип компонента>` файлы с официального репозитория Zabbix на github.com с файлами конфигурации. :::  **Пример 2**      # git checkout 6.0     # docker compose -f ./docker-compose_v3_ubuntu_mysql_local.yaml up -d  Эта команда загрузит образ на основе Ubuntu 20.04 (focal), затем локально соберёт компоненты Zabbix 6.0 и запустит их в detach режиме.

en-us	##### Examples  Numeric (unsigned) value:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":3,"name":"Agent availability","clock":1519304285,"ns":123456789,"value":1,"type":3}  Numeric (float) value:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":4,"name":"CPU Load","clock":1519304285,"ns":123456789,"value":0.1,"type":0}  Character, text value:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":2,"name":"Agent version","clock":1519304285,"ns":123456789,"value":"3.4.4","type":4}  Log value:      {"host":{"host":"Host A","name":"Host A visible"},"groups":["Group X","Group Y","Group Z"],"itemid":1,"name":"Messages in log file","clock":1519304285,"ns":123456789,"timestamp":1519304285,"source":"","severity":0,"eventid":0,"value":"log file message","type":2}
ru	##### Примеры  Числовое (беззнаковое) значение:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":3,"name":"Agent availability","clock":1519304285,"ns":123456789,"value":1,"type":3}  Числовое (с плавающей точкой) значение:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":4,"name":"CPU Load","clock":1519304285,"ns":123456789,"value":0.1,"type":0}  Символьное, текстовое значение:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":2,"name":"Agent version","clock":1519304285,"ns":123456789,"value":"3.4.4","type":4}  Запись журнала (лога):      {"host":{"host":"Host A","name":"Host A visible"},"groups":["Group X","Group Y","Group Z"],"itemid":1,"name":"Messages in log file","clock":1519304285,"ns":123456789,"timestamp":1519304285,"source":"","severity":0,"eventid":0,"value":"log file message","type":2}

en-us	##### Examples  Numeric (unsigned) value:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":3,"name":"Agent availability","clock":1519311600,"count":60,"min":1,"avg":1,"max":1,"type":3}  Numeric (float) value:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":4,"name":"CPU Load","clock":1519311600,"count":60,"min":0.01,"avg":0.15,"max":1.5,"type":0}
ru	##### Примеры  Числовое (беззнаковое) значение:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":3,"name":"Agent availability","clock":1519311600,"count":60,"min":1,"avg":1,"max":1,"type":3}  Числовое (с плавающей точкой) значение:      {"host":{"host":"Host B","name":"Host B visible"},"groups":["Group X","Group Y","Group Z"],"itemid":4,"name":"CPU Load","clock":1519311600,"count":60,"min":0.01,"avg":0.15,"max":1.5,"type":0}

en-us	 ##### Examples of correct/incorrect syntax  Expressions (including function calls) cannot be used as history, trend, or foreach [function](/manual/appendix/functions) parameters. However, those functions themselves can be used in other (non-historical) function parameters.  |Expression|Example| |-|---------| |Valid|`avg(last(/host/key1),last(/host/key2)*10,last(/host/key1)*100)`<br>`max(avg(avg_foreach(/*/system.cpu.load?[group="Servers A"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers B"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers C"],5m)))`| |Invalid|`sum(/host/key,10+2)`<br>`sum(/host/key, avg(10,2))`<br>`sum(/host/key,last(/host/key2))`|  Note that in an expression like:      sum(sum_foreach(//resptime[*],5m))/sum(count_foreach(//resptime[*],5m))  it cannot be guaranteed that both parts of the equation will always have the same set of values.  While one part of the expression is evaluated, a new value for the requested period may arrive and  then the other part of the expression will have a different set of values.
ru	##### Примеры корректного/некорректного синтаксиса  Выражения (включая вызовы функций) нельзя использовать в качестве параметров к [функциям](/manual/appendix/functions) истории, динамики изменений или foreach. Однако, сами эти функции могут быть использованы в параметрах других (не относящихся к истории) функций.  |Выражение|Пример| |-|---------| |Допустимое|`avg(last(/host/key1),last(/host/key2)*10,last(/host/key1)*100)`<br>`max(avg(avg_foreach(/*/system.cpu.load?[group="Servers A"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers B"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers C"],5m)))`| |Недопустимое|`sum(/host/key,10+2)`<br>`sum(/host/key, avg(10,2))`<br>`sum(/host/key,last(/host/key2))`|  Обратите внимание, что в таком выражении, как:      sum(sum_foreach(//resptime[*],5m))/sum(count_foreach(//resptime[*],5m))  нельзя гарантировать, что обе части всегда будут иметь одинаковый набор значений. Пока вычисляется одна часть выражения, может прийти новое значение за запрашиваемый период, и тогда вторая часть выражения будет иметь отличающийся набор значений.

en-us	#### Examples of hardware configuration  The table provides examples of hardware configuration, assuming a **Linux/BSD/Unix** platform.  These are size and hardware configuration examples to start with. Each Zabbix installation is unique.  Make sure to benchmark the performance of your Zabbix system in a staging or development environment,  so that you can fully understand your requirements before deploying the Zabbix installation to its  production environment.  |Installation size|Monitored metrics^**1**^|CPU/vCPU cores|Memory<br>(GiB)|Database|Amazon EC2^**2**^| |-|-|-|-|-|-| |Small|1 000|2|8|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL|m6i.large/m6g.large| |Medium|10 000|4|16|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL|m6i.xlarge/m6g.xlarge| |Large|100 000|16|64|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL,<br>Oracle|m6i.4xlarge/m6g.4xlarge| |Very large|1 000 000|32|96|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL,<br>Oracle|m6i.8xlarge/m6g.8xlarge|  ^**1**^ 1 metric = 1 item + 1 trigger + 1 graph<br> ^**2**^ Example with Amazon general purpose EC2 instances, using ARM64 or x86_64 architecture, a  proper instance type like Compute/Memory/Storage optimised should be selected during Zabbix  installation evaluation and testing before installing in its production environment.  ::: noteclassic Actual configuration depends on the number of active items and refresh rates very much (see [database size](#database-size) section of this page for details). It is highly recommended to run the database on a separate server for large installations. :::
ru	#### Примеры конфигураций оборудования  Следующая таблица приводит примеры конфигураций оборудования для платформы **Linux/BSD/Unix**.  Это примеры размеров и конфигураций оборудования, с которых можно начать. Каждая Zabbix инсталляция уникальна. Обязательно оцените производительность вашей системы Zabbix на промежуточной среде или среде разработки, чтобы вы смогли полностью понять свои требования перед развёртыванием Zabbix инсталляции в производственной среде.  |Размер инсталляции|Кол-во наблюдаемых метрик^**1**^|Ядра CPU/vCPU|Память<br>(ГБ)|База данных|Amazon EC2^**2**^| |-|-|-|-|-|-| |Маленькая|1 000|2|8|MySQL сервер,<br>Percona сервер,<br>MariaDB сервер,<br>PostgreSQL|m6i.large/m6g.large| |Средняя|10 000|4|16|MySQL сервер,<br>Percona сервер,<br>MariaDB сервер,<br>PostgreSQL|m6i.xlarge/m6g.xlarge| |Большая|100 000|16|64|MySQL сервер,<br>Percona сервер,<br>MariaDB сервер,<br>PostgreSQL,<br>Oracle|m6i.4xlarge/m6g.4xlarge| |Очень большая|1 000 000|32|96|MySQL сервер,<br>Percona сервер,<br>MariaDB сервер,<br>PostgreSQL,<br>Oracle|m6i.8xlarge/m6g.8xlarge|  ^**1**^ 1 метрика = 1 элемент данных + 1 триггер + 1 график<br> ^**2**^ Пример с инстансами Amazon EC2 общего назначения, с использованием архитектур ARM64 или x86_64. Необходимый тип инстанса, такой как оптимизированный на Compute/Memory/Storage, необходимо выбрать во время оценки и тестирования инсталляции Zabbix перед установкой в производственной среде.  ::: noteclassic Фактическая конфигурация очень сильно зависит от количества активных элементов данных и частоты обновления (смотрите раздел этой же страницы [размер базы данных](#размер-базы-данных) для получения подробных сведений). Настоятельно рекомендуется в случае крупных инсталляций запускать базу данных на отдельном сервере. :::

en-us	##### Examples of hardware configuration  The table provides several examples of hardware configurations:  |Name|Platform|CPU/Memory|Database|Monitored hosts| |----|--------|----------|--------|---------------| |*Small*|CentOS|Virtual Appliance|MySQL InnoDB|100| |*Medium*|CentOS|2 CPU cores/2GB|MySQL InnoDB|500| |*Large*|RedHat Enterprise Linux|4 CPU cores/8GB|RAID10 MySQL InnoDB or PostgreSQL|>1000| |*Very large*|RedHat Enterprise Linux|8 CPU cores/16GB|Fast RAID10 MySQL InnoDB or PostgreSQL|>10000|  ::: noteclassic Actual configuration depends on the number of active items and refresh rates very much (see [database size](/manual/installation/requirements#Database_size) section of this page for details). It is highly recommended to run the database on a separate box for large installations. :::
ru	##### Примеры конфигураций оборудования  В таблице приводятся несколько вариантов аппаратных конфигураций:  |Название|Платформа|CPU / Память|База данных|Количество наблюдаемых хостов| |----|--------|----------|--------|---------------| |*Маленькая*|CentOS|Виртуальная машина|MySQL InnoDB|100| |*Средняя*|CentOS|2 CPU ядер/2GB|MySQL InnoDB|500| |*Большая*|RedHat Enterprise Linux|4 CPU ядер/8GB|RAID10 MySQL InnoDB or PostgreSQL|>1000| |*Очень большая*|RedHat Enterprise Linux|8 CPU ядер/16GB|Быстрый RAID10 MySQL InnoDB или PostgreSQL|>10000|  ::: noteclassic Фактические параметры конфигурации зависят от количества активных элементов данных и частоты обновления этих элементов (ознакомьтесь с разделом [размер базы данных](/manual/installation/requirements#размер_базы_данных) этой страницы). Настоятельно рекомендуется запускать базу данных на отдельном сервере для крупных инсталляций. :::

en-us	##### Examples of simple user parameters  A simple command:      UserParameter=ping,echo 1  The agent will always return '1' for an item with 'ping' key.  A more complex example:      UserParameter=mysql.ping,mysqladmin -uroot ping | grep -c alive  The agent will return '1', if MySQL server is alive, '0' - otherwise.
ru	##### Примеры простых пользовательских параметров  Простая команда:      UserParameter=ping,echo 1  Агент будет всегда возвращать '1' для элемента данных с ключом 'ping'.  Более сложный пример:      UserParameter=mysql.ping,mysqladmin -uroot ping|grep -c alive  Агент будет возвращать '1', если MySQL сервер доступен, '0' - в противном случае.

en-us	#### Examples of triggers
ru	#### Примеры триггеров

en-us	##### Examples  Problem:      {"clock":1519304285,"ns":123456789,"value":1,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"eventid":42, "hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}  Recovery:      {"clock":1519304345,"ns":987654321,"value":0,"eventid":43,"p_eventid":42}  Problem (multiple problem event generation):      {"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}      {"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}  Recovery:      {"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":43}      {"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":42}
ru	##### Примеры  Проблема:      {"clock":1519304285,"ns":123456789,"value":1,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"eventid":42, "hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}  Восстановление:      {"clock":1519304345,"ns":987654321,"value":0,"eventid":43,"p_eventid":42}  Проблема (множественный режим генерации событий ПРОБЛЕМА):      {"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}      {"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent is unreachable on Host B or pollers are too busy on Zabbix Server","severity":3,"hosts":[{"host":"Host B", "name":"Host B visible"},{"host":"Zabbix Server","name":"Zabbix Server visible"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}  Восстановление:      {"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":43}      {"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":42}

en-us	### Examples  Request:  ``` {.java} {    "jsonrpc": "2.0",     "method": "autoregistration.get",     "params": {         "output": "extend"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "tls_accept": "3"     },     "id": 1 } ```
ru	### Примеры  Запрос:  ``` {.json} {    "jsonrpc": "2.0",    "method": "autoregistration.get",    "params": {       "output": "extend"    },    "auth": "038e1d7b1735c6a5436ee9eae095879e",    "id": 1 } ```  Ответ:  ```json {    "jsonrpc": "2.0",    "result": {       "tls_accept": "3"    },    "id": 1 } ```

en-us	### Examples  Request:  ```json {     "jsonrpc": "2.0",     "method": "authentication.get",     "params": {         "output": "extend"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "authentication_type": "0",         "http_auth_enabled": "0",         "http_login_form": "0",         "http_strip_domains": "",         "http_case_sensitive": "1",         "ldap_configured": "0",         "ldap_host": "",         "ldap_port": "389",         "ldap_base_dn": "",         "ldap_search_attribute": "",         "ldap_bind_dn": "",         "ldap_case_sensitive": "1",         "ldap_bind_password": "",         "saml_auth_enabled": "0",         "saml_idp_entityid": "",         "saml_sso_url": "",         "saml_slo_url": "",         "saml_username_attribute": "",         "saml_sp_entityid": "",         "saml_nameid_format": "",         "saml_sign_messages": "0",         "saml_sign_assertions": "0",         "saml_sign_authn_requests": "0",         "saml_sign_logout_requests": "0",         "saml_sign_logout_responses": "0",         "saml_encrypt_nameid": "0",         "saml_encrypt_assertions": "0",         "saml_case_sensitive": "0",         "passwd_min_length": "8",         "passwd_check_rules": "8"     },     "id": 1 } ```
ru	### Примеры  Запрос:  ```json {    "jsonrpc": "2.0",    "method": "authentication.get",    "params": {       "output": "extend"    },    "auth": "038e1d7b1735c6a5436ee9eae095879e",    "id": 1 } ```  Ответ:  ```json {    "jsonrpc": "2.0",    "result": {       "authentication_type": "0",       "http_auth_enabled": "0",       "http_login_form": "0",       "http_strip_domains": "",       "http_case_sensitive": "1",       "ldap_configured": "0",       "ldap_host": "",       "ldap_port": "389",       "ldap_base_dn": "",       "ldap_search_attribute": "",       "ldap_bind_dn": "",       "ldap_case_sensitive": "1",       "ldap_bind_password": "",       "saml_auth_enabled": "0",       "saml_idp_entityid": "",       "saml_sso_url": "",       "saml_slo_url": "",       "saml_username_attribute": "",       "saml_sp_entityid": "",       "saml_nameid_format": "",       "saml_sign_messages": "0",       "saml_sign_assertions": "0",       "saml_sign_authn_requests": "0",       "saml_sign_logout_requests": "0",       "saml_sign_logout_responses": "0",       "saml_encrypt_nameid": "0",       "saml_encrypt_assertions": "0",       "saml_case_sensitive": "0",       "passwd_min_length": "8",       "passwd_check_rules": "8"    },    "id": 1 } ```

en-us	### Examples  Request:  ```json {     "jsonrpc": "2.0",     "method": "authentication.update",     "params": {         "http_auth_enabled": 1,         "http_case_sensitive": 0,         "http_login_form": 1     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         "http_auth_enabled",         "http_case_sensitive",         "http_login_form"     ],     "id": 1 } ```
ru	### Примеры  Запрос:  ```json {    "jsonrpc": "2.0",    "method": "authentication.update",    "params": {       "http_auth_enabled": 1,       "http_case_sensitive": 0,       "http_login_form": 1    },    "auth": "038e1d7b1735c6a5436ee9eae095879e",    "id": 1 } ```  Ответ:  ```json {    "jsonrpc": "2.0",    "result": [       "http_auth_enabled",       "http_case_sensitive",       "http_login_form"    ],    "id": 1 } ```

en-us	### Examples  Request:  ```json {     "jsonrpc": "2.0",     "method": "autoregistration.update",     "params": {         "tls_accept": "3",         "tls_psk_identity": "PSK 001",         "tls_psk": "11111595725ac58dd977beef14b97461a7c1045b9a1c923453302c5473193478"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": true,     "id": 1 } ```
ru	### Примеры  Запрос:  ```json {    "jsonrpc": "2.0",    "method": "autoregistration.update",    "params": {       "tls_accept": "3",       "tls_psk_identity": "PSK 001",       "tls_psk": "11111595725ac58dd977beef14b97461a7c1045b9a1c923453302c5473193478"    },    "auth": "038e1d7b1735c6a5436ee9eae095879e",    "id": 1 } ```  Ответ:  ```json {    "jsonrpc": "2.0",    "result": true,    "id": 1 } ```

en-us	#### Examples  The ways in which macro functions can be used to customize macro values is illustrated in the following examples on received values:  |Received value|Macro|Output| |----|----|----| |`24.3413523`|`{{ITEM.VALUE}.fmtnum(2)}`|`24.34`| |`24.3413523`|`{{ITEM.VALUE}.fmtnum(0)}`|`24`| |`12:36:01`|`{{TIME}.fmttime(%B)}`|`October`| |`12:36:01`|`{{TIME}.fmttime(%d %B,-1M/M)}`|`1 September`| |`123Log line`|`{{ITEM.VALUE}.regsub(^[0-9]+, Problem)}`|`Problem`| |`123 Log line`|`{{ITEM.VALUE}.regsub("^([0-9]+)", "Problem")}`|`Problem`| |`123 Log line`|`{{ITEM.VALUE}.regsub("^([0-9]+)", Problem ID: \1)}`|`Problem ID: 123`| |`Log line`|`{{ITEM.VALUE}.regsub(".*", "Problem ID: \1")}`|''Problem ID: ''| |`MySQL crashed errno 123`|`{{ITEM.VALUE}.regsub("^(\w+).*?([0-9]+)", " Problem ID: \1_\2 ")}`|'' Problem ID: MySQL\_123 ''| |`123 Log line`|`{{ITEM.VALUE}.regsub("([1-9]+", "Problem ID: \1")}`|`*UNKNOWN*` (invalid regular expression)| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+)", \1)}`|`customername`| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+)", \2)}`|`1`| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+", \1)}`|`{{#IFALIAS}.regsub("(.*)_([0-9]+", \1)}` (invalid regular expression)| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+)\", \1)}"}`|`{$MACRO:"customername"}`| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+)\", \2)}"}`|`{$MACRO:"1"}`| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+\", \1)}"}`|`{$MACRO:"{{#M}.regsub(\"(.*)_([0-9]+\", \1)}"}` (invalid regular expression)| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+)\\", \1)}\"}"`|`"{$MACRO:\"customername\"}"`| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+)\\", \2)}\"}"`|`"{$MACRO:\"1\"}")`| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+\\", \1)}\"}"`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+\\", \1)}\"}")` (invalid regular expression)|  ##### Seeing full item values  Long values of resolved {ITEM.VALUE} and {ITEM.LASTVALUE} macros for text/log items are truncated to 20 characters in some frontend locations. To see the full values of these macros you may use macro functions, e.g.:  `{{ITEM.VALUE}.regsub("(.*)", \1)}`<br> `{{ITEM.LASTVALUE}.regsub("(.*)", \1)}`  See also: {ITEM.VALUE} and {ITEM.LASTVALUE} [macro details](/manual/appendix/macros/supported_by_location).
ru	#### Примеры  Способы использования функции макросов для модификации значений макросов проиллюстрированы следующими примерами полученных значений:  |Полученное значение|Макрос|Вывод| |----|----|----| |`24.3413523`|`{{ITEM.VALUE}.fmtnum(2)}`|`24.34`| |`24.3413523`|`{{ITEM.VALUE}.fmtnum(0)}`|`24`| |`12:36:01`|`{{TIME}.fmttime(%B)}`|`October`| |`12:36:01`|`{{TIME}.fmttime(%d %B,-1M/M)}`|`1 September`| |`123Log line`|`{{ITEM.VALUE}.regsub(^[0-9]+, Problem)}`|`Problem`| |`123 Log line`|`{{ITEM.VALUE}.regsub("^([0-9]+)", "Problem")}`|`Problem`| |`123 Log line`|`{{ITEM.VALUE}.regsub("^([0-9]+)", Problem ID: \1)}`|`Problem ID: 123`| |`Log line`|`{{ITEM.VALUE}.regsub(".*", "Problem ID: \1")}`|''Problem ID: ''| |`MySQL crashed errno 123`|`{{ITEM.VALUE}.regsub("^(\w+).*?([0-9]+)", " Problem ID: \1_\2 ")}`|'' Problem ID: MySQL\_123 ''| |`123 Log line`|`{{ITEM.VALUE}.regsub("([1-9]+", "Problem ID: \1")}`|`*НЕИЗВЕСТНО*` (ошибочное регулярное выражение)| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+)", \1)}`|`customername`| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+)", \2)}`|`1`| |`customername_1`|`{{#IFALIAS}.regsub("(.*)_([0-9]+", \1)}`|`{{#IFALIAS}.regsub("(.*)_([0-9]+", \1)}` (ошибочное регулярное выражение)| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+)\", \1)}"}`|`{$MACRO:"customername"}`| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+)\", \2)}"}`|`{$MACRO:"1"}`| |`customername_1`|`{$MACRO:"{{#IFALIAS}.regsub(\"(.*)_([0-9]+\", \1)}"}`|`{$MACRO:"{{#M}.regsub(\"(.*)_([0-9]+\", \1)}"}` (ошибочное регулярное выражение)| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+)\\", \1)}\"}"`|`"{$MACRO:\"customername\"}"`| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+)\\", \2)}\"}"`|`"{$MACRO:\"1\"}")`| |`customername_1`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+\\", \1)}\"}"`|`"{$MACRO:\"{{#IFALIAS}.regsub(\\"(.*)_([0-9]+\\", \1)}\"}")` (ошибочное регулярное выражение)|  ##### Просмотр полных значений элемента данных  Длинные значения раскрытых макросов {ITEM.VALUE} и {ITEM.LASTVALUE} для текстовых или журнальных элементов данных в некоторых местах веб-интерфейса обрезаются до 20 символов. Для просмотра полных значений этих макросов вы можете использовать функции макросов, например:  `{{ITEM.VALUE}.regsub("(.*)", \1)}`<br> `{{ITEM.LASTVALUE}.regsub("(.*)", \1)}`  Смртрите также: [более подробная информация о макросах](/manual/appendix/macros/supported_by_location) {ITEM.VALUE} и {ITEM.LASTVALUE}.

en-us	 #### Examples  **User macro with context**  Regular expression: `\.+\"[a-z]+`<br> User macro with context: `{$MACRO:regex:"\.+\\"[a-z]+"}`  Notice:  -   backslashes are [not escaped](/manual/config/macros/user_macros_context#important-notes); -   quotation marks are escaped.     **LLD macro function**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`  Notice:  -   backslashes are not escaped; -   quotation marks are escaped.  **LLD macro function inside user macro context**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> User macro with context: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`  Notice:  -   backslash escaping for LLD does not change; -   upon inserting the LLD macro into user macro context, we need to put it into string:    1.   Quotation marks are added around the macro expression;    2.   Quotation marks get escaped; in total, 3 new backslashes are introduced.  **String parameter of non-history function**   String content: `\.+\"[a-z]+`<br> Expression: `concat("abc", "\\.\\\"[a-z]+")`  Notice:  -   String parameters require escaping both for backslashes and quotation marks.  **String parameter of history function**   String content: `\.+\"[a-z]+`<br> Expression: `find(__ITEM_KEY__,,"regexp","\.+\\"[a-z]+")`  Notice:  -   backslashes are not escaped; -   quotation marks are escaped.  **LLD macro function inside string parameter of non-history function**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Expression: `concat("abc, "{{#MACRO}.iregsub(\"\\.+\\\\\"[a-z]+\", \\1)}")`  Notice:  -   String parameters require escaping both for backslashes and quotation marks; -   Another layer of escaping is added, because the macro will be resolved only after string is unquoted;  **LLD macro function inside string parameter of history function**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Expression: `find(__ITEM_KEY__,,"eq","{{#MACRO}.iregsub(\"\.+\\\"[a-z]+\", \1)}")`  Notice:  -   backslashes are not escaped; -   quotation marks are escaped.  **User macro with context inside string parameter of non-history function**  Regular expression: `\.+\"[a-z]+`<br> User macro with context: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Expression: `concat("abc, "{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}")`  Notice:  -   Same as in the previous example an additional layer of escaping is needed; -   Backslashes and quotation marks are escaped only for the top-level escaping (by virtue of it being a string parameter).  **User macro with context inside string parameter of history function**  Regular expression: `\.+\"[a-z]+`<br> User macro with context: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Expression: `find(__ITEM_KEY__,,"eq","{$MACRO:regex:\"\.+\\\"[a-z]+\"}")`  Notice:  -   backslashes are not escaped; -   quotation marks are escaped.  **LLD macro function inside user macro context inside non-history function**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> User macro with context: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`<br> Expression: `concat("abc, "{$MACRO:\"{{#MACRO}.iregsub(\\\".+\\\\\\\"[a-z]+\\\", \\1)}\"}")`  Notice the three layers of escaping:     1. For LLD macro function, without escaping of backslashes;    2. For User macro with context, without escaping of backslashes;    3. For the string parameter of a function, with escaping of backslashes.  **LLD macro function inside user macro context inside history function**  Regular expression: `\.+\"[a-z]+`<br> LLD macro: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> User macro with context: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`<br> Expression: `find(__ITEM_KEY__,,"eq","{$MACRO:\"{{#MACRO}.iregsub(\\".+\\\\"[a-z]+\\", \1)}\"}")`  Notice:  -   backslashes are not escaped; -   quotation marks are escaped.  **User macro with context just inside string**  Regular expression: `\.+\"[a-z]+`<br> User macro with context: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Inside string of some expression, for example: `func(arg1, arg2, arg3)="{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}"`  Notice:  -   Strings also require backslash escaping; -   Strings also require quotation mark escaping; -   Again a case with 2 levels of escaping:  1. Escaping for user macro context without backslash escaping;  2. Escaping for it being a string with backslash escaping.
ru	#### Примеры  **Пользовательский макрос с контекстом**  Регулярное выражение: `\.+\"[a-z]+`<br> Пользовательский макрос с контекстом: `{$MACRO:regex:"\.+\\"[a-z]+"}`  Замечания:  -   обратные слэши [не экранируются](/manual/config/macros/user_macros_context#важные-замечания); -   кавычки экранируются.     **Функция макросов низкоуровневого обнаружения (LLD)**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`  Замечания:  -   обратные слэши не экранируются; -   кавычки экранируются.  **Функция макросов LLD внутри контекста пользовательского макроса**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Пользовательский макрос с контекстом: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`  Замечания:  -   экранирование обратных слэшей для LLD не меняется; -   при вставке макроса LLD в контекст пользовательского макроса нам нужно поместить это в строку:    1.   Выражение макроса заключается в кавычки;    2.   Кавычки экранируются; всего добавляется 3 новых обратных слэша.  **Строковый параметр функции, не относящейся к истории**   Содержимое строки: `\.+\"[a-z]+`<br> Выражение: `concat("abc", "\\.\\\"[a-z]+")`  Замечание:  -   Строковый параметр требует экранирования как для обратных слэшей, так и для кавычек.  **Строковый параметр функции истории**   Содержимое строки: `\.+\"[a-z]+`<br> Выражение: `find(__ITEM_KEY__,,"regexp","\.+\\"[a-z]+")`  Замечания:  -   обратные слэши не экранируются; -   кавычки экранируются.  **Функция макросов LLD внутри строкового параметра функции, не относящейся к истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Выражение: `concat("abc, "{{#MACRO}.iregsub(\"\\.+\\\\\"[a-z]+\", \\1)}")`  Замечания:  -   Строковые параметры требуют экранирования как для обратных слэшей, так и для кавычек; -   Добавляется ещё один уровень экранирования, так как макрос будет раскрыт только после раскрытия кавычек в строке;  **Функция макросов LLD внутри строкового параметра функции истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Выражение: `find(__ITEM_KEY__,,"eq","{{#MACRO}.iregsub(\"\.+\\\"[a-z]+\", \1)}")`  Замечания:  -   обратные слэши не экранируются; -   кавычки экранируются.  **Пользовательский макрос с контекстом внутри строкового параметра функции, не относящейся к истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Пользовательский макрос с контекстом: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Выражение: `concat("abc, "{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}")`  Замечания:  -   Как и в предыдущем примере, необходим дополнительный уровень экранирования; -   Обратные слэши и кавычки экранируются только для экранирования верхнего уровня (поскольку это строковый параметр).  **Пользовательский макрос с контекстом внутри строкового параметра функции истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Пользовательский макрос с контекстом: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Выражение: `find(__ITEM_KEY__,,"eq","{$MACRO:regex:\"\.+\\\"[a-z]+\"}")`  Замечания:  -   обратные слэши не экранируются; -   кавычки экранируются.  **Функция макросов LLD внутри контекста пользовательского макроса внутри функции, не относящейся к истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Пользовательский макрос с контекстом: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`<br> Выражение: `concat("abc, "{$MACRO:\"{{#MACRO}.iregsub(\\\".+\\\\\\\"[a-z]+\\\", \\1)}\"}")`  Замечания по трём уровням экранирования:     1. Для функции макросов LLD, без экранирования обратных слэшей;    2. Для пользовательского макроса с контекстом, без экранирования обратных слэшей;    3. Для строкового параметра функции, с экранированием обратных слэшей.  **Функция макросов LLD внутри контекста пользовательского макроса внутри функции истории**  Регулярное выражение: `\.+\"[a-z]+`<br> Макрос LLD: `{{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}`<br> Пользовательский макрос с контекстом: `{$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}`<br> Выражение: `find(__ITEM_KEY__,,"eq","{$MACRO:\"{{#MACRO}.iregsub(\\".+\\\\"[a-z]+\\", \1)}\"}")`  Замечания:  -   обратные слэши не экранируются; -   кавычки экранируются.  **Пользовательский макрос с контекстом просто внутри строки**  Регулярное выражение: `\.+\"[a-z]+`<br> Пользовательский макрос с контекстом: `{$MACRO:regex:"\.+\\"[a-z]+"}`<br> Внутри строки некоторого выражения, например: `func(arg1, arg2, arg3)="{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}"`  Замечания:  -   Строки также требуют экранирования обратных слэшей; -   Строки также требуют экранирования кавычек; -   Снова случай с двумя уровнями экранирования:  1. Экранирование для контекста пользовательского макроса — без экранирования обратных слэшей;  2. Экранирование, поскольку это строка — с экранированием обратных слэшей.

en-us	#### Examples  Working hours. Monday - Friday from 9:00 till 18:00:      1-5,09:00-18:00  Working hours plus weekend. Monday - Friday from 9:00 till 18:00 and Saturday, Sunday from 10:00 till 16:00:      1-5,09:00-18:00;6-7,10:00-16:00
ru	#### Примеры  Рабочее время. С понедельника по пятницу с 9:00 до 18:00:      1-5,09:00-18:00  Рабочие часы плюс выходные. С понедельника по пятницу с 9:00 до 18:00, а также суббота и воскресенье с 10:00 до 16:00:      1-5,09:00-18:00;6-7,10:00-16:00

en-us	## EXAMPLES  **zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]"**\ **zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]" --tls-connect cert --tls-ca-file /home/zabbix/zabbix\_ca\_file --tls-agent-cert-issuer "CN=Signing CA,OU=IT operations,O=Example Corp,DC=example,DC=com" --tls-agent-cert-subject "CN=server1,OU=IT operations,O=Example Corp,DC=example,DC=com" --tls-cert-file /home/zabbix/zabbix\_get.crt --tls-key-file /home/zabbix/zabbix\_get.key\ zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]" --tls-connect psk --tls-psk-identity "PSK ID Zabbix agentd" --tls-psk-file /home/zabbix/zabbix\_agentd.psk** [ ]{#lbAH}
ru	## ПРИМЕРЫ  **zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]"**\ **zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]" --tls-connect cert --tls-ca-file /home/zabbix/zabbix\_ca\_file --tls-agent-cert-issuer "CN=Signing CA,OU=IT operations,O=Example Corp,DC=example,DC=com" --tls-agent-cert-subject "CN=server1,OU=IT operations,O=Example Corp,DC=example,DC=com" --tls-cert-file /home/zabbix/zabbix\_get.crt --tls-key-file /home/zabbix/zabbix\_get.key\ zabbix\_get -s 127.0.0.1 -p 10050 -k "system.cpu.load\[all,avg1\]" --tls-connect psk --tls-psk-identity "PSK ID Zabbix agentd" --tls-psk-file /home/zabbix/zabbix\_agentd.psk** [ ]{#lbAH}

en-us	## EXAMPLES  **zabbix\_js -s script-file.js -p example** [ ]{#lbAG}
ru	## ПРИМЕРЫ  **zabbix\_js -s script-file.js -p example** [ ]{#lbAG}

en-us	## EXAMPLES  **zabbix\_sender -c /etc/zabbix/zabbix\_agentd.conf -k mysql.queries -o 342.45**\     Send **342.45** as the value for **mysql.queries** item of monitored host. Use monitored host and Zabbix server defined in agent configuration file.  **zabbix\_sender -c /etc/zabbix/zabbix\_agentd.conf -s "Monitored Host" -k mysql.queries -o 342.45**\     Send **342.45** as the value for **mysql.queries** item of **Monitored Host** host using Zabbix server defined in agent configuration file.  \ **zabbix\_sender -z 192.168.1.113 -i data\_values.txt**     \ Send values from file **data\_values.txt** to Zabbix server with IP **192.168.1.113**. Host names and keys are defined in the file.  \ **echo "- hw.serial.number 1287872261 SQ4321ASDF" | zabbix\_sender -c /usr/local/etc/zabbix\_agentd.conf -T -i -**\     Send a timestamped value from the commandline to Zabbix server, specified in the agent configuration file. Dash in the input data indicates that hostname also should be used from the same configuration file.  \ **echo '"Zabbix server" trapper.item ""' | zabbix\_sender -z 192.168.1.113 -p 10000 -i -**\     Send empty value of an item to the Zabbix server with IP address **192.168.1.113** on port **10000** from the commandline. Empty values must be indicated by empty double quotes.  **zabbix\_sender -z 192.168.1.113 -s "Monitored Host" -k mysql.queries -o 342.45 --tls-connect cert --tls-ca-file /home/zabbix/zabbix\_ca\_file --tls-cert-file /home/zabbix/zabbix\_agentd.crt --tls-key-file /home/zabbix/zabbix\_agentd.key**\     Send **342.45** as the value for **mysql.queries** item in **Monitored Host** host to server with IP **192.168.1.113** using TLS with certificate.  **zabbix\_sender -z 192.168.1.113 -s "Monitored Host" -k mysql.queries -o 342.45 --tls-connect psk --tls-psk-identity "PSK ID Zabbix agentd" --tls-psk-file /home/zabbix/zabbix\_agentd.psk**\     Send **342.45** as the value for **mysql.queries** item in **Monitored Host** host to server with IP **192.168.1.113** using TLS with pre-shared key (PSK).  [ ]{#lbAI}
ru	## ПРИМЕРЫ  **zabbix\_sender -c /etc/zabbix/zabbix\_agentd.conf -k mysql.queries -o 342,45**\   Отправить **342.45** в качестве значения элемента данных **mysql.queries** наблюдаемого узла сети. Будут использованы отслеживаемый узел сети и сервер Zabbix, определённые в конфигурационном файле агента.  **zabbix\_sender -c /etc/zabbix/zabbix\_agentd.conf -s "Наблюдаемый узел сети" -k mysql.queries -o 342.45**\   Отправить **342.45** в качестве значения элемента данных **mysql.queries** узла сети **Наблюдаемый узел сети**, используя сервер Zabbix, определённый в конфигурационном файле агента.  \ **zabbix\_sender -z 192.168.1.113 -i data\_values.txt**   \ Отправить значения из файла **data\_values.txt** на сервер Zabbix с IP **192.168.1.113**. Имена узлов и ключи определяются в файле.  \ **echo "- hw.serial.number 1287872261 SQ4321ASDF" | zabbix\_sender -c /usr/local/etc/zabbix\_agentd.conf -T -i -**\   Отправить значение с отметкой времени из командной строки на сервер Zabbix, указанный в конфигурационном файле агента. Знак минуса во входных данных указывает, что имя узла сети также должно использоваться из того же конфигурационного файла.  \ **echo '"Zabbix сервер" trapper.item ""' | zabbix\_sender -z 192.168.1.113 -p 10000 -i -**\   Отправить пустое значение элемента данных на сервер Zabbix с IP-адресом **192.168.1.113** на порт **10000** из командной строки. Пустые значения должны быть обозначены пустой строкой в двойных кавычках.  **zabbix\_sender -z 192.168.1.113 -s "Наблюдаемый узел" -k mysql.queries -o 342.45 --tls-connect cert --tls-ca-file /home/zabbix/zabbix\_ca\_file --tls-cert-file /home/zabbix/zabbix\_agentd.crt --tls-key-file /home/zabbix/zabbix\_agentd.key**\   Отправить **342.45** в качестве значения для элемента данных **mysql.queries** в **Наблюдаемый узел** на Zabbix сервер с IP-адресом **192.168.1.113** с использованием TLS сертификата.  **zabbix\_sender -z 192.168.1.113 -s "Наблюдаемый узел" -k mysql.queries -o 342.45 --tls-connect psk --tls-psk-identity "PSK ID Zabbix agentd" --tls-psk-file /home/zabbix/zabbix\_agentd.psk**\   Отправить **342.45** в качестве значения для элемента данных **mysql.queries** в **Наблюдаемый узел** на Zabbix сервер с IP-адресом **192.168.1.113** с использованием TLS и общего ключа (pre-shared key, PSK).  [ ]{#lbAI}

en-us	#### Example  The following example demonstrates how to quickly setup VMware monitoring on Zabbix:  -   make sure that Zabbix server has been compiled with the required options (--with-libxml2 and     --with-libcurl): the log file must contain "VMware monitoring: YES" during server startup. -   set the StartVMwareCollectors option in Zabbix server configuration     file to 2 or more -   create a new host -   set the host macros required for VMware authentication:  ![](../../assets/en/manual/vm_monitoring/vm_host_macros.png)  -   link the host to the VMware service template:  ![](../../assets/en/manual/vm_monitoring/vm_host_templates.png)  -   click on the **Add** button to save the host.
ru	#### Пример  Следующий пример демонстрирует, как можно быстро настроить мониторинг VMware в Zabbix:  -  убедитесь, что Zabbix сервер скомпилирован с требуемыми опциями (--with-libxml2 и --with-libcurl): файл журнала при запуске сервера должен содержать: «VMware monitoring: YES». -  задайте параметр StartVMwareCollectors в файле конфигурации Zabbix сервера значением 2 или более -  создайте новый узел сети -  укажите требуемые для аутентификации в VMware макросы на уровне узла сети:  ![](../../assets/en/manual/vm_monitoring/vm_host_macros.png)  -  присоедините узел сети к шаблону службы VMware:  ![](../../assets/en/manual/vm_monitoring/vm_host_templates.png)  -  нажмите на кнопку **Добавить**, чтобы сохранить узел сети.

en-us	 ### Example  The required JSON format is best illustrated with an example. Suppose we are running an old Zabbix 1.8 agent (one that does not support "vfs.fs.discovery"), but we still need to discover file systems. Here is a simple Perl script for Linux that discovers mounted file systems and outputs JSON, which includes both file system name and type. One way to use it would be as a UserParameter with key "vfs.fs.discovery\_perl":  ``` {.perl} #!/usr/bin/perl  $first = 1;  print "[\n";  for (`cat /proc/mounts`) {     ($fsname, $fstype) = m/\S+ (\S+) (\S+)/;      print "\t,\n" if not $first;     $first = 0;      print "\t{\n";     print "\t\t\"{#FSNAME}\":\"$fsname\",\n";     print "\t\t\"{#FSTYPE}\":\"$fstype\"\n";     print "\t}\n"; }  print "]\n"; ```  ::: noteimportant Allowed symbols for LLD macro names are **0-9** , **A-Z** , **\_** , **.**  Lowercase letters are not supported in the names. :::  An example of its output (reformatted for clarity) is shown below. JSON for custom discovery checks has to follow the same format.  ``` {.javascript} [     { "{#FSNAME}":"/",                           "{#FSTYPE}":"rootfs"   },     { "{#FSNAME}":"/sys",                        "{#FSTYPE}":"sysfs"    },     { "{#FSNAME}":"/proc",                       "{#FSTYPE}":"proc"     },     { "{#FSNAME}":"/dev",                        "{#FSTYPE}":"devtmpfs" },     { "{#FSNAME}":"/dev/pts",                    "{#FSTYPE}":"devpts"   },     { "{#FSNAME}":"/lib/init/rw",                "{#FSTYPE}":"tmpfs"    },     { "{#FSNAME}":"/dev/shm",                    "{#FSTYPE}":"tmpfs"    },     { "{#FSNAME}":"/home",                       "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/tmp",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/usr",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/var",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/sys/fs/fuse/connections",    "{#FSTYPE}":"fusectl"  } ] ```  In the previous example it is required that the keys match the LLD macro names used in prototypes, the alternative is to extract LLD macro values using JSONPath `{#FSNAME}` → `$.fsname` and `{#FSTYPE}` → `$.fstype`, thus making such script possible:  ``` {.perl} #!/usr/bin/perl   $first = 1;   print "[\n";   for (`cat /proc/mounts`) {     ($fsname, $fstype) = m/\S+ (\S+) (\S+)/;       print "\t,\n" if not $first;     $first = 0;       print "\t{\n";     print "\t\t\"fsname\":\"$fsname\",\n";     print "\t\t\"fstype\":\"$fstype\"\n";     print "\t}\n"; }   print "]\n"; ```  An example of its output (reformatted for clarity) is shown below. JSON for custom discovery checks has to follow the same format.  ``` {.javascript} [     { "fsname":"/",                           "fstype":"rootfs"   },     { "fsname":"/sys",                        "fstype":"sysfs"    },     { "fsname":"/proc",                       "fstype":"proc"     },     { "fsname":"/dev",                        "fstype":"devtmpfs" },     { "fsname":"/dev/pts",                    "fstype":"devpts"   },     { "fsname":"/lib/init/rw",                "fstype":"tmpfs"    },     { "fsname":"/dev/shm",                    "fstype":"tmpfs"    },     { "fsname":"/home",                       "fstype":"ext3"     },     { "fsname":"/tmp",                        "fstype":"ext3"     },     { "fsname":"/usr",                        "fstype":"ext3"     },     { "fsname":"/var",                        "fstype":"ext3"     },     { "fsname":"/sys/fs/fuse/connections",    "fstype":"fusectl"  } ] ```  Then, in the discovery rule's "Filter" field, we could specify "{\#FSTYPE}" as a macro and "rootfs|ext3" as a regular expression.  ::: noteclassic You don't have to use macro names FSNAME/FSTYPE with custom LLD rules, you are free to use whatever names you like. In case JSONPath is used then LLD row will be an array element that can be an object, but it can be also another array or a value.  :::  Note that, if using a user parameter, the return value is limited to 16MB. For more details, see [data limits for LLD return values](/manual/discovery/low_level_discovery/notes#data-limits-for-return-values).
ru	### Пример  Требуемый формат JSON лучше всего иллюстирируется примером. Предположим, мы запускаем старый агент Zabbix 1.8 (один из тех, что не поддерживают «vfs.fs.discovery»), но при этом нам нужно иметь обнаружение файловых систем. Здесь простой скрипт на Perl для Linux, который обнаруживает смонтированные файловые системы и выводит JSON, содержащий имя файловой системы и её тип. Одним из способов его использования могло бы быть определить его как UserParameter с ключом «vfs.fs.discovery\_perl»:  ``` {.perl} #!/usr/bin/perl  $first = 1;  print "[\n";  for (`cat /proc/mounts`) {     ($fsname, $fstype) = m/\S+ (\S+) (\S+)/;      print "\t,\n" if not $first;     $first = 0;      print "\t{\n";     print "\t\t\"{#FSNAME}\":\"$fsname\",\n";     print "\t\t\"{#FSTYPE}\":\"$fstype\"\n";     print "\t}\n"; }  print "]\n"; ```  ::: noteimportant Символы, разрешённые в именах LLD макросов, - это **0-9** , **A-Z** , **\_** , **.**  Буквы нижнего регистра в именах макросов не поддерживаются. :::  Пример вывода (отформатированный для наглядности) показан ниже. JSON для пользовательских проверок обнаружения должен следовать тому же формату.  ``` {.javascript} [     { "{#FSNAME}":"/",                           "{#FSTYPE}":"rootfs"   },     { "{#FSNAME}":"/sys",                        "{#FSTYPE}":"sysfs"    },     { "{#FSNAME}":"/proc",                       "{#FSTYPE}":"proc"     },     { "{#FSNAME}":"/dev",                        "{#FSTYPE}":"devtmpfs" },     { "{#FSNAME}":"/dev/pts",                    "{#FSTYPE}":"devpts"   },     { "{#FSNAME}":"/lib/init/rw",                "{#FSTYPE}":"tmpfs"    },     { "{#FSNAME}":"/dev/shm",                    "{#FSTYPE}":"tmpfs"    },     { "{#FSNAME}":"/home",                       "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/tmp",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/usr",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/var",                        "{#FSTYPE}":"ext3"     },     { "{#FSNAME}":"/sys/fs/fuse/connections",    "{#FSTYPE}":"fusectl"  } ] ```  В предыдущем примере требуется, чтобы ключи соответствовали LLD макросам, используемым в прототипах; альтернатива - извлекать значения LLD макросов с помощью JSONPath `{#FSNAME}` → `$.fsname` и `{#FSTYPE}` → `$.fstype`, тогда можно использовать такой скрипт:  ``` {.perl} #!/usr/bin/perl   $first = 1;   print "[\n";   for (`cat /proc/mounts`) {     ($fsname, $fstype) = m/\S+ (\S+) (\S+)/;       print "\t,\n" if not $first;     $first = 0;       print "\t{\n";     print "\t\t\"fsname\":\"$fsname\",\n";     print "\t\t\"fstype\":\"$fstype\"\n";     print "\t}\n"; }   print "]\n"; ```  Пример его вывода (отформатированный для наглядности) показан ниже. JSON для проверок пользовательских обнаружений должен следовать тому же формату.  ``` {.javascript} [     { "fsname":"/",                           "fstype":"rootfs"   },     { "fsname":"/sys",                        "fstype":"sysfs"    },     { "fsname":"/proc",                       "fstype":"proc"     },     { "fsname":"/dev",                        "fstype":"devtmpfs" },     { "fsname":"/dev/pts",                    "fstype":"devpts"   },     { "fsname":"/lib/init/rw",                "fstype":"tmpfs"    },     { "fsname":"/dev/shm",                    "fstype":"tmpfs"    },     { "fsname":"/home",                       "fstype":"ext3"     },     { "fsname":"/tmp",                        "fstype":"ext3"     },     { "fsname":"/usr",                        "fstype":"ext3"     },     { "fsname":"/var",                        "fstype":"ext3"     },     { "fsname":"/sys/fs/fuse/connections",    "fstype":"fusectl"  } ] ```  Затем, в поле «Фильтры» правила обнаружения, мы можем указать «{\#FSTYPE}» как макрос и «rootfs|ext3» как регулярное выражение.  ::: noteclassic Вы не обязаны использовать имена макросов FSNAME/FSTYPE в пользовательских правилах LLD, вы можете выбирать такие имена, как вам нравится. В случае, если используется JSONPath, то строка LLD будет элементом массива, который может являться объектом, но также может быть другим массивом или значением.  :::  Обратите внимание, если используется пользовательский параметр, то возвращаемое значение ограничено 16 МБ. Для получения более подробной информации смотрите [ограничения данных для возвращаемых значений LLD](/manual/discovery/low_level_discovery/notes#ограничения-данных-для-возвращаемых-значений).

en-us	##### Example with an inline regex modifier  Use of the following regular expression including an inline modifier (?i) to match the characters "error":      (?i)error  ![regexp\_expr\_3a.png](../../assets/en/manual/regular_expressions/regexp_expr_3a.png)  Chosen *Expression type*: "Result is TRUE". Characters "error" are matched.
ru	#### Пример с использованием inline модификатора регулярного выражения  Использование следующего регулярного выражения, которое включает inline модификатор (?i) для поиска соответствия символов "error":      (?i)error  ![regexp\_expr\_3a.png](../../assets/en/manual/regular_expressions/regexp_expr_3a.png)  Выбран *Тип выражения*: "Результат ИСТИНА". Есть соответствие по символам "error".

en-us	### Example workflow  The following section will walk you through some usage examples in more detail.
ru	### Пример рабочего процесса  В следующем разделе приведено несколько примеров использования более детально.

en-us	#### Execution steps  :::noteclassic By default, all scripts in Zabbix are executed using the *sh* shell, and it is not possible to modify the default shell. To utilize a different shell, you can employ a workaround: create a script file and invoke that script during command execution. :::  The command/script is executed similarly on both Unix and Windows platforms:  1.  Zabbix (the parent process) creates a pipe for communication 2.  Zabbix sets the pipe as the output for the to-be-created child     process 3.  Zabbix creates the child process (runs the command/script) 4.  A new process group (in Unix) or a job (in Windows) is created for     the child process 5.  Zabbix reads from the pipe until timeout occurs or no one is writing     to the other end (ALL handles/file descriptors have been closed).     Note that the child process can create more processes and exit     before they exit or close the handle/file descriptor. 6.  If the timeout has not been reached, Zabbix waits until the initial     child process exits or timeout occurs 7.  If the initial child process exited and the timeout has not been     reached, Zabbix checks exit code of the initial child process and     compares it to 0 (non-zero value is considered as execution failure,     only for custom alert scripts, remote commands and user scripts     executed on Zabbix server and Zabbix proxy) 8.  At this point it is assumed that everything is done and the whole     process tree (i.e. the process group or the job) is terminated  ::: noteimportant Zabbix assumes that a command/script has done processing when the initial child process has exited AND no other process is still keeping the output handle/file descriptor open. When processing is done, ALL created processes are terminated. :::  All double quotes and backslashes in the command are escaped with backslashes and the command is enclosed in double quotes.
ru	#### Этапы выполнения  :::noteclassic По умолчанию, все скрипты в Zabbix выполняются с имользованием оболочки *sh*, и оболочку по умолчанию изменить нельзя. Чтобы использовать другую оболочку, можно использовать следующий приём: создать файл скрипта и вызвать этот скрипт при выполнении команды. :::  Команда/скрипт выполняется одинаково как на Unix, так и на Windows платформах:  1.  Zabbix (родительский процесс) cоздаёт конвейер для связи 2.  Zabbix настраивает данный конвейер для вывода данных от создаваемого дочернего процесса 3.  Zabbix создаёт дочерний процесс (выполняет команду/скрипт) 4.  Создается новая группа процесса (в Unix) или задача (в Windows) для дочернего процесса 5.  Zabbix считывает из конвейера данные до тех пор, пока не истечёт установленное время ожидания или до момента, когда прекратится запись с другой стороны (закрыты ВСЕ обработчики/файловые дескрипторы). Обратите внимание, что дочерний процесс может создать еще некоторое количество процессов и выйти до того, как эти процессы завершатся или будет закрыт обработчик/файловый дескриптор. 6.  Если установленное время ожидания не было достигнуто, Zabbix ждёт завершения начального дочернего процесса или ждёт достижения установленного времени ожидания. 7.  Если начальный дочерний процесс завершил свою работу и время ожидания не вышло, тогда Zabbix проверяет код завершения начального дочернего процесса и сравнивает его с 0 (ненулевое значение считается ошибкой выполнения, только для пользовательских скриптов оповещений, удалённых команд и пользовательских скриптов, выполняемых на Zabbix сервере и Zabbix прокси) 8.  На этот момент подразумевается, что всё выполнено, и всё дерево процессов (т.е. группа процессов или задача) завершается.  ::: noteimportant Zabbix предполагает, что команда/скрипт завершили обработку, в тот момент, когда завершился изначальный дочерний процесс И никакие другие процессы всё ещё не держат открытым обработчик/файловый дескриптор вывода. Когда обработка завершена, ВСЕ созданные процессы завершаются. :::  Все двойные кавычки и обратная косая черта в команде экранируются обратной косой чертой, и вся команда заключается в двойные кавычки.

en-us	#### Exit code  Before version 2.2 Zabbix agent returned 0 in case of successful exit and 255 in case of failure. Starting from version 2.2 and higher Zabbix agent returns 0 in case of successful exit and 1 in case of failure.
ru	#### Код завершения процесса  До версии Zabbix 2.2, Zabbix агент возвращал 0 в случае успешного завершения процесса и код 255 в случае ошибки. Начиная с версии Zabbix 2.2 и выше, Zabbix агент возвращает код 0 в случае корректного завершения процесса и код 1 в случае отказа/аварийного завершения процесса.

en-us	#### Exit code checking  Exit code are checked with the following conditions:  -   Only for custom alert scripts, remote commands and user scripts     executed on Zabbix server and Zabbix proxy. -   Any exit code that is different from 0 is considered as execution     failure. -   Contents of standard error and standard output for failed executions     are collected and available in frontend (where execution result is     displayed). -   Additional log entry is created for remote commands on Zabbix server     to save script execution output and can be enabled using     LogRemoteCommands agent     [parameter](/manual/appendix/config/zabbix_agentd).  Possible frontend messages and log entries for failed commands/scripts:  -   Contents of standard error and standard output for failed executions     (if any). -   "Process exited with code: N." (for empty output, and exit code not     equal to 0). -   "Process killed by signal: N." (for process terminated by a signal,     on Linux only). -   "Process terminated unexpectedly." (for process terminated for     unknown reasons).
ru	#### Проверка кода завершения  Код завершения проверяется на соответствие следующим условиям:  -   Только для пользовательских скриптов оповещений, удалённых команд и пользовательских скриптов, выполняемых на Zabbix сервере и Zabbix прокси. -   Любой код завершения, отличный от 0, считается ошибкой выполнения. -   Содержимое стандарного вывода ошибки и стандартного вывода собирается при ошибочных выполнениях и доступно в веб-интерфейсе (где отображается результат выполнения). -   Дополнительная запись добавляется в журнал удалённых команд на Zabbix сервере, чтобы сохранить вывод выполнения скрипта, эту возможность можно включить, используя [параметр](/manual/appendix/config/zabbix_agentd) агента LogRemoteCommands.  Возможные сообщения в веб-интерфейсе и записи в журналах при ошибочных командах/скриптах:  -   Содержимое стандарного вывода ошибки и стандартного вывода при ошибочных выполнениях (если имеется). -   "Process exited with code: N." (при пустом выводе и отличном от 0 коде завершения). -   "Process killed by signal: N." (при завершении процесса сигналом, только на Linux). -   "Process terminated unexpectedly." (при завершении процесса по неизвестным причинам).

en-us	#### Exit codes  Starting from version 4.4.8 Zabbix agent 2 can also be compiled with older OpenSSL versions (1.0.1, 1.0.2).  In this case Zabbix provides mutexes for locking in OpenSSL. If a mutex lock or unlock fails then an error message is printed to the standard error stream (STDERR) and Agent 2 exits with return code 2 or 3, respectively.
ru	#### Коды завершения  Начиная с версии 4.4.8, Zabbix агент 2 также может быть скомпилирован с более старыми версиями OpenSSL (1.0.1, 1.0.2).  В этом случае Zabbix предоставляет мьютексы для блокировки в OpenSSL. Если блокировка или разблокировка мьютекса не удалась, то в стандартный поток ошибок (STDERR) выводится сообщение об ошибке, и агент 2 завершает работу, возвращая код 2 или 3 соответственно.

en-us	## EXIT STATUS  The exit status is 0 if the values were sent and all of them were successfully processed by server. If data was sent, but processing of at least one of the values failed, the exit status is 2. If data sending failed, the exit status is 1.  [ ]{#lbAH}
ru	## СТАТУС ЗАВЕРШЕНИЯ  Статус завершения равен 0, если значения были отправлены и все они были успешно обработаны сервером. Если данные были отправлены, но обработка хотя бы одного из значений не удалась, статус завершения равен 2. Если отправка данных не удалось, статус завершения будет 1.  [ ]{#lbAH}

en-us	 ### Expandable lists in latest data subfilter  Expandable lists have been introduced in the [latest data](/manual/web_interface/frontend_sections/monitoring/latest_data) subfilter:  -   For each entity group (e.g. tags, hosts) up to 10 rows of entities are now displayed. If there are more entities,  this list can be expanded to a maximum of 1000 entries (the value of SUBFILTER_VALUES_PER_GROUP in [frontend definitions](/manual/web_interface/definitions))  by clicking on a three-dot icon displayed at the end. Previously a non-expandable maximum of 100 entries was the limit.  -   In the list of *Tag values* up to 10 rows of tag names are now displayed. If there are more tag names with values,  this list can be expanded to a maximum of 200 tag names by clicking on a three-dot icon displayed at the bottom.  Previously, a non-expandable maximum of 20 rows with tag names was the limit.  For each tag name up to 10 rows of values are displayed (expandable to 1000 entries  (the value of SUBFILTER_VALUES_PER_GROUP in [frontend definitions](/manual/web_interface/definitions))).
ru	### Раскрываемые списки в подфильтре последних данных  В подфильтр [последних данных](/manual/web_interface/frontend_sections/monitoring/latest_data) добавлены раскрываемые списки:  -   Теперь по каждой группе объектов (таких как теги, узлы сети) отображается до 10 строк объектов. Если объектов больше, этот список можно раскрыть до максимум 1000 записей (значение SUBFILTER_VALUES_PER_GROUP в [определениях веб-интерфейса](/manual/web_interface/definitions)), нажав на иконку с многоточием, которая отображается в конце списка. Ранее нераскрываемый максимум был ограничен 100 записями.  -   Теперь в списке *Значения тегов* отображаются до 10 строк имен тегов. Если имеется большее количество имен тегов со значениями, этот список можно расширить до максимально 200 имен тегов, нажав на иконку с многоточием, которая отображается снизу. Ранее, нераскрываемый максимум был ограничен 20 строками с именами тегов.  По каждому имени тега отображается до 10 строк значений (можно расширить до 1000 записей (значение SUBFILTER_VALUES_PER_GROUP в [определениях веб-интерфейса](/manual/web_interface/definitions))).

en-us	##### Export format  Data can be exported using the Zabbix web frontend or [Zabbix API](/manual/api/reference/configuration). Supported export formats are YAML, XML and JSON.
ru	##### Формат экспорта  Данные можно экспортировать при помощи веб-интерфейса Zabbix или [Zabbix API](/manual/api/reference/configuration). Поддерживаемые форматы экспорта: YAML, XML и JSON.

en-us	#### Export format  Export format in YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2021-08-31T12:40:55Z'   groups:     - uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6       name: Templates/Applications   templates:     - uuid: 56079badd056419383cc26e6a4fcc7e0       template: VMware       name: VMware       description: |         You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/                  Template tooling version used: 0.38       templates:         - name: 'VMware macros'       groups:         - name: Templates/Applications       items:         - uuid: 5ce209f4d94f460488a74a92a52d92b1           name: 'VMware: Event log'           type: SIMPLE           key: 'vmware.eventlog[{$VMWARE.URL},skip]'           history: 7d           trends: '0'           value_type: LOG           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Collect VMware event log. See also: https://www.zabbix.com/documentation/6.0/manual/config/items/preprocessing/examples#filtering_vmware_event_log_records'           tags:             - tag: Application               value: VMware         - uuid: ee2edadb8ce943ef81d25dbbba8667a4           name: 'VMware: Full name'           type: SIMPLE           key: 'vmware.fullname[{$VMWARE.URL}]'           delay: 1h           history: 7d           trends: '0'           value_type: CHAR           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'VMware service full name.'           preprocessing:             - type: DISCARD_UNCHANGED_HEARTBEAT               parameters:                 - 1d           tags:             - tag: Application               value: VMware         - uuid: a0ec9145f2234fbea79a28c57ebdb44d           name: 'VMware: Version'           type: SIMPLE           key: 'vmware.version[{$VMWARE.URL}]'           delay: 1h           history: 7d           trends: '0'           value_type: CHAR           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'VMware service version.'           preprocessing:             - type: DISCARD_UNCHANGED_HEARTBEAT               parameters:                 - 1d           tags:             - tag: Application               value: VMware       discovery_rules:         - uuid: 16ffc933cce74cf28a6edf306aa99782           name: 'Discover VMware clusters'           type: SIMPLE           key: 'vmware.cluster.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of clusters'           item_prototypes:             - uuid: 46111f91dd564a459dbc1d396e2e6c76               name: 'VMware: Status of "{#CLUSTER.NAME}" cluster'               type: SIMPLE               key: 'vmware.cluster.status[{$VMWARE.URL},{#CLUSTER.NAME}]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware cluster status.'               valuemap:                 name: 'VMware status'               tags:                 - tag: Application                   value: VMware         - uuid: 8fb6a45cbe074b0cb6df53758e2c6623           name: 'Discover VMware datastores'           type: SIMPLE           key: 'vmware.datastore.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           item_prototypes:             - uuid: 4b61838ba4c34e709b25081ae5b059b5               name: 'VMware: Average read latency of the datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.read[{$VMWARE.URL},{#DATASTORE},latency]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'Amount of time for a read operation from the datastore (milliseconds).'               tags:                 - tag: Application                   value: VMware             - uuid: 5355c401dc244bc588ccd18767577c93               name: 'VMware: Free space on datastore {#DATASTORE} (percentage)'               type: SIMPLE               key: 'vmware.datastore.size[{$VMWARE.URL},{#DATASTORE},pfree]'               delay: 5m               history: 7d               value_type: FLOAT               units: '%'               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware datastore space in percentage from total.'               tags:                 - tag: Application                   value: VMware             - uuid: 84f13c4fde2d4a17baaf0c8c1eb4f2c0               name: 'VMware: Total size of datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.size[{$VMWARE.URL},{#DATASTORE}]'               delay: 5m               history: 7d               units: B               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware datastore space in bytes.'               tags:                 - tag: Application                   value: VMware             - uuid: 540cd0fbc56c4b8ea19f2ff5839ce00d               name: 'VMware: Average write latency of the datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.write[{$VMWARE.URL},{#DATASTORE},latency]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'Amount of time for a write operation to the datastore (milliseconds).'               tags:                 - tag: Application                   value: VMware         - uuid: a5bc075e89f248e7b411d8f960897a08           name: 'Discover VMware hypervisors'           type: SIMPLE           key: 'vmware.hv.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of hypervisors.'           host_prototypes:             - uuid: 051a1469d4d045cbbf818fcc843a352e               host: '{#HV.UUID}'               name: '{#HV.NAME}'               group_links:                 - group:                     name: Templates/Applications               group_prototypes:                 - name: '{#CLUSTER.NAME}'                 - name: '{#DATACENTER.NAME}'               templates:                 - name: 'VMware Hypervisor'               macros:                 - macro: '{$VMWARE.HV.UUID}'                   value: '{#HV.UUID}'                   description: 'UUID of hypervisor.'               custom_interfaces: 'YES'               interfaces:                 - ip: '{#HV.IP}'         - uuid: 9fd559f4e88c4677a1b874634dd686f5           name: 'Discover VMware VMs'           type: SIMPLE           key: 'vmware.vm.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of guest virtual machines.'           host_prototypes:             - uuid: 23b9ae9d6f33414880db1cb107115810               host: '{#VM.UUID}'               name: '{#VM.NAME}'               group_links:                 - group:                     name: Templates/Applications               group_prototypes:                 - name: '{#CLUSTER.NAME} (vm)'                 - name: '{#DATACENTER.NAME}/{#VM.FOLDER} (vm)'                 - name: '{#HV.NAME}'               templates:                 - name: 'VMware Guest'               macros:                 - macro: '{$VMWARE.VM.UUID}'                   value: '{#VM.UUID}'                   description: 'UUID of guest virtual machine.'               custom_interfaces: 'YES'               interfaces:                 - ip: '{#VM.IP}'       valuemaps:         - uuid: 3c59c22905054d42ac4ee8b72fe5f270           name: 'VMware status'           mappings:             - value: '0'               newvalue: gray             - value: '1'               newvalue: green             - value: '2'               newvalue: yellow             - value: '3'               newvalue: red ```
ru	#### Формат экспорта  Формат экспорта в YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2021-08-31T12:40:55Z'   groups:     - uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6       name: Templates/Applications   templates:     - uuid: 56079badd056419383cc26e6a4fcc7e0       template: VMware       name: VMware       description: |         You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/                  Template tooling version used: 0.38       templates:         - name: 'VMware macros'       groups:         - name: Templates/Applications       items:         - uuid: 5ce209f4d94f460488a74a92a52d92b1           name: 'VMware: Event log'           type: SIMPLE           key: 'vmware.eventlog[{$VMWARE.URL},skip]'           history: 7d           trends: '0'           value_type: LOG           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Collect VMware event log. See also: https://www.zabbix.com/documentation/6.0/manual/config/items/preprocessing/examples#filtering_vmware_event_log_records'           tags:             - tag: Application               value: VMware         - uuid: ee2edadb8ce943ef81d25dbbba8667a4           name: 'VMware: Full name'           type: SIMPLE           key: 'vmware.fullname[{$VMWARE.URL}]'           delay: 1h           history: 7d           trends: '0'           value_type: CHAR           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'VMware service full name.'           preprocessing:             - type: DISCARD_UNCHANGED_HEARTBEAT               parameters:                 - 1d           tags:             - tag: Application               value: VMware         - uuid: a0ec9145f2234fbea79a28c57ebdb44d           name: 'VMware: Version'           type: SIMPLE           key: 'vmware.version[{$VMWARE.URL}]'           delay: 1h           history: 7d           trends: '0'           value_type: CHAR           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'VMware service version.'           preprocessing:             - type: DISCARD_UNCHANGED_HEARTBEAT               parameters:                 - 1d           tags:             - tag: Application               value: VMware       discovery_rules:         - uuid: 16ffc933cce74cf28a6edf306aa99782           name: 'Discover VMware clusters'           type: SIMPLE           key: 'vmware.cluster.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of clusters'           item_prototypes:             - uuid: 46111f91dd564a459dbc1d396e2e6c76               name: 'VMware: Status of "{#CLUSTER.NAME}" cluster'               type: SIMPLE               key: 'vmware.cluster.status[{$VMWARE.URL},{#CLUSTER.NAME}]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware cluster status.'               valuemap:                 name: 'VMware status'               tags:                 - tag: Application                   value: VMware         - uuid: 8fb6a45cbe074b0cb6df53758e2c6623           name: 'Discover VMware datastores'           type: SIMPLE           key: 'vmware.datastore.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           item_prototypes:             - uuid: 4b61838ba4c34e709b25081ae5b059b5               name: 'VMware: Average read latency of the datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.read[{$VMWARE.URL},{#DATASTORE},latency]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'Amount of time for a read operation from the datastore (milliseconds).'               tags:                 - tag: Application                   value: VMware             - uuid: 5355c401dc244bc588ccd18767577c93               name: 'VMware: Free space on datastore {#DATASTORE} (percentage)'               type: SIMPLE               key: 'vmware.datastore.size[{$VMWARE.URL},{#DATASTORE},pfree]'               delay: 5m               history: 7d               value_type: FLOAT               units: '%'               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware datastore space in percentage from total.'               tags:                 - tag: Application                   value: VMware             - uuid: 84f13c4fde2d4a17baaf0c8c1eb4f2c0               name: 'VMware: Total size of datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.size[{$VMWARE.URL},{#DATASTORE}]'               delay: 5m               history: 7d               units: B               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'VMware datastore space in bytes.'               tags:                 - tag: Application                   value: VMware             - uuid: 540cd0fbc56c4b8ea19f2ff5839ce00d               name: 'VMware: Average write latency of the datastore {#DATASTORE}'               type: SIMPLE               key: 'vmware.datastore.write[{$VMWARE.URL},{#DATASTORE},latency]'               history: 7d               username: '{$VMWARE.USERNAME}'               password: '{$VMWARE.PASSWORD}'               description: 'Amount of time for a write operation to the datastore (milliseconds).'               tags:                 - tag: Application                   value: VMware         - uuid: a5bc075e89f248e7b411d8f960897a08           name: 'Discover VMware hypervisors'           type: SIMPLE           key: 'vmware.hv.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of hypervisors.'           host_prototypes:             - uuid: 051a1469d4d045cbbf818fcc843a352e               host: '{#HV.UUID}'               name: '{#HV.NAME}'               group_links:                 - group:                     name: Templates/Applications               group_prototypes:                 - name: '{#CLUSTER.NAME}'                 - name: '{#DATACENTER.NAME}'               templates:                 - name: 'VMware Hypervisor'               macros:                 - macro: '{$VMWARE.HV.UUID}'                   value: '{#HV.UUID}'                   description: 'UUID of hypervisor.'               custom_interfaces: 'YES'               interfaces:                 - ip: '{#HV.IP}'         - uuid: 9fd559f4e88c4677a1b874634dd686f5           name: 'Discover VMware VMs'           type: SIMPLE           key: 'vmware.vm.discovery[{$VMWARE.URL}]'           delay: 1h           username: '{$VMWARE.USERNAME}'           password: '{$VMWARE.PASSWORD}'           description: 'Discovery of guest virtual machines.'           host_prototypes:             - uuid: 23b9ae9d6f33414880db1cb107115810               host: '{#VM.UUID}'               name: '{#VM.NAME}'               group_links:                 - group:                     name: Templates/Applications               group_prototypes:                 - name: '{#CLUSTER.NAME} (vm)'                 - name: '{#DATACENTER.NAME}/{#VM.FOLDER} (vm)'                 - name: '{#HV.NAME}'               templates:                 - name: 'VMware Guest'               macros:                 - macro: '{$VMWARE.VM.UUID}'                   value: '{#VM.UUID}'                   description: 'UUID of guest virtual machine.'               custom_interfaces: 'YES'               interfaces:                 - ip: '{#VM.IP}'       valuemaps:         - uuid: 3c59c22905054d42ac4ee8b72fe5f270           name: 'VMware status'           mappings:             - value: '0'               newvalue: gray             - value: '1'               newvalue: green             - value: '2'               newvalue: yellow             - value: '3'               newvalue: red ```

en-us	#### Export format  Export format in YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2023-05-03T11:24:04Z'   groups:     - uuid: dc579cd7a1a34222933f24f52a68bcd8       name: 'Linux servers'   hosts:     - host: Example_host       name: Example_host       templates:         - name: 'Zabbix server health'       groups:         - name: 'Linux servers'       items:         - name: Test_item1           type: ZABBIX_ACTIVE           key: kernel.maxproc       inventory_mode: DISABLED ```
ru	#### Формат экспорта  Формат экспорта в YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2023-05-03T11:24:04Z'   groups:     - uuid: dc579cd7a1a34222933f24f52a68bcd8       name: 'Linux servers'   hosts:     - host: Example_host       name: Example_host       templates:         - name: 'Zabbix server health'       groups:         - name: 'Linux servers'       items:         - name: Test_item1           type: ZABBIX_ACTIVE           key: kernel.maxproc       inventory_mode: DISABLED ```

en-us	#### Export format  Export to YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2021-08-31T12:55:10Z'   images:     - name: Zabbix_server_3D_(128)       imagetype: '1'       encodedImage: iVBOR...5CYII=   maps:     - name: 'Local network'       width: '680'       height: '200'       label_type: '0'       label_location: '0'       highlight: '1'       expandproblem: '1'       markelements: '1'       show_unack: '0'       severity_min: '0'       show_suppressed: '0'       grid_size: '50'       grid_show: '1'       grid_align: '1'       label_format: '0'       label_type_host: '2'       label_type_hostgroup: '2'       label_type_trigger: '2'       label_type_map: '2'       label_type_image: '2'       label_string_host: ''       label_string_hostgroup: ''       label_string_trigger: ''       label_string_map: ''       label_string_image: ''       expand_macros: '1'       background: {  }       iconmap: {  }       urls: {  }       selements:         - elementtype: '0'           elements:             - host: 'Zabbix server'           label: |             {HOST.NAME}             {HOST.CONN}           label_location: '0'           x: '111'           'y': '61'           elementsubtype: '0'           areatype: '0'           width: '200'           height: '200'           viewtype: '0'           use_iconmap: '0'           selementid: '1'           icon_off:             name: Zabbix_server_3D_(128)           icon_on: {  }           icon_disabled: {  }           icon_maintenance: {  }           urls: {  }           evaltype: '0'       shapes:         - type: '0'           x: '0'           'y': '0'           width: '680'           height: '15'           text: '{MAP.NAME}'           font: '9'           font_size: '11'           font_color: '000000'           text_halign: '0'           text_valign: '0'           border_type: '0'           border_width: '0'           border_color: '000000'           background_color: ''           zindex: '0'       lines: {  }       links: {  } ```
ru	#### Формат экспорта  Экспорт в YAML:  ``` {.yaml} zabbix_export:   version: '6.0'   date: '2021-08-31T12:55:10Z'   images:     - name: Zabbix_server_3D_(128)       imagetype: '1'       encodedImage: iVBOR...5CYII=   maps:     - name: 'Local network'       width: '680'       height: '200'       label_type: '0'       label_location: '0'       highlight: '1'       expandproblem: '1'       markelements: '1'       show_unack: '0'       severity_min: '0'       show_suppressed: '0'       grid_size: '50'       grid_show: '1'       grid_align: '1'       label_format: '0'       label_type_host: '2'       label_type_hostgroup: '2'       label_type_trigger: '2'       label_type_map: '2'       label_type_image: '2'       label_string_host: ''       label_string_hostgroup: ''       label_string_trigger: ''       label_string_map: ''       label_string_image: ''       expand_macros: '1'       background: {  }       iconmap: {  }       urls: {  }       selements:         - elementtype: '0'           elements:             - host: 'Zabbix server'           label: |             {HOST.NAME}             {HOST.CONN}           label_location: '0'           x: '111'           'y': '61'           elementsubtype: '0'           areatype: '0'           width: '200'           height: '200'           viewtype: '0'           use_iconmap: '0'           selementid: '1'           icon_off:             name: Zabbix_server_3D_(128)           icon_on: {  }           icon_disabled: {  }           icon_maintenance: {  }           urls: {  }           evaltype: '0'       shapes:         - type: '0'           x: '0'           'y': '0'           width: '680'           height: '15'           text: '{MAP.NAME}'           font: '9'           font_size: '11'           font_color: '000000'           text_halign: '0'           text_valign: '0'           border_type: '0'           border_width: '0'           border_color: '000000'           background_color: ''           zindex: '0'       lines: {  }       links: {  } ```

en-us	#### Export format  Export to YAML:  ```yaml zabbix_export:   version: '6.0'   date: '2021-08-31T13:34:17Z'   media_types:     - name: Pushover       type: WEBHOOK       parameters:         - name: endpoint           value: 'https://api.pushover.net/1/messages.json'         - name: eventid           value: '{EVENT.ID}'         - name: event_nseverity           value: '{EVENT.NSEVERITY}'         - name: event_source           value: '{EVENT.SOURCE}'         - name: event_value           value: '{EVENT.VALUE}'         - name: expire           value: '1200'         - name: message           value: '{ALERT.MESSAGE}'         - name: priority_average           value: '0'         - name: priority_default           value: '0'         - name: priority_disaster           value: '0'         - name: priority_high           value: '0'         - name: priority_information           value: '0'         - name: priority_not_classified           value: '0'         - name: priority_warning           value: '0'         - name: retry           value: '60'         - name: title           value: '{ALERT.SUBJECT}'         - name: token           value: '<PUSHOVER TOKEN HERE>'         - name: triggerid           value: '{TRIGGER.ID}'         - name: url           value: '{$ZABBIX.URL}'         - name: url_title           value: Zabbix         - name: user           value: '{ALERT.SENDTO}'       max_sessions: '0'       script: |         try {             var params = JSON.parse(value),                 request = new HttpRequest(),                 data,                 response,                 severities = [                     {name: 'not_classified', color: '#97AAB3'},                     {name: 'information', color: '#7499FF'},                     {name: 'warning', color: '#FFC859'},                     {name: 'average', color: '#FFA059'},                     {name: 'high', color: '#E97659'},                     {name: 'disaster', color: '#E45959'},                     {name: 'resolved', color: '#009900'},                     {name: 'default', color: '#000000'}                 ],                 priority;                      if (typeof params.HTTPProxy === 'string' && params.HTTPProxy.trim() !== '') {                 request.setProxy(params.HTTPProxy);             }                      if ([0, 1, 2, 3].indexOf(parseInt(params.event_source)) === -1) {                 throw 'Incorrect "event_source" parameter given: "' + params.event_source + '".\nMust be 0-3.';             }                      if (params.event_value !== '0' && params.event_value !== '1'                 && (params.event_source === '0' || params.event_source === '3')) {                 throw 'Incorrect "event_value" parameter given: ' + params.event_value + '\nMust be 0 or 1.';             }                      if ([0, 1, 2, 3, 4, 5].indexOf(parseInt(params.event_nseverity)) === -1) {                 params.event_nseverity = '7';             }                      if (params.event_value === '0') {                 params.event_nseverity = '6';             }                      priority = params['priority_' + severities[params.event_nseverity].name] || params.priority_default;                      if (isNaN(priority) || priority < -2 || priority > 2) {                 throw '"priority" should be -2..2';             }                      if (params.event_source === '0' && isNaN(params.triggerid)) {                 throw 'field "triggerid" is not a number';             }                      if (isNaN(params.eventid)) {                 throw 'field "eventid" is not a number';             }                      if (typeof params.message !== 'string' || params.message.trim() === '') {                 throw 'field "message" cannot be empty';             }                      data = {                 token: params.token,                 user: params.user,                 title: params.title,                 message: params.message,                 url: (params.event_source === '0')                      ? params.url + '/tr_events.php?triggerid=' + params.triggerid + '&eventid=' + params.eventid                     : params.url,                 url_title: params.url_title,                 priority: priority             };                      if (priority == 2) {                 if (isNaN(params.retry) || params.retry < 30) {                     throw 'field "retry" should be a number with value of at least 30 if "priority" is set to 2';                 }                          if (isNaN(params.expire) || params.expire > 10800) {                     throw 'field "expire" should be a number with value of at most 10800 if "priority" is set to 2';                 }                          data.retry = params.retry;                 data.expire = params.expire;             }                      data = JSON.stringify(data);             Zabbix.log(4, '[ Pushover Webhook ] Sending request: ' + params.endpoint + '\n' + data);                      request.addHeader('Content-Type: application/json');             response = request.post(params.endpoint, data);                      Zabbix.log(4, '[ Pushover Webhook ] Received response with status code ' + request.getStatus() + '\n' + response);                      if (response !== null) {                 try {                     response = JSON.parse(response);                 }                 catch (error) {                     Zabbix.log(4, '[ Pushover Webhook ] Failed to parse response received from Pushover');                     response = null;                 }             }                      if (request.getStatus() != 200 || response === null || typeof response !== 'object' || response.status !== 1) {                 if (response !== null && typeof response === 'object' && typeof response.errors === 'object'                         && typeof response.errors[0] === 'string') {                     throw response.errors[0];                 }                 else {                     throw 'Unknown error. Check debug log for more information.';                 }             }                      return 'OK';         }         catch (error) {             Zabbix.log(4, '[ Pushover Webhook ] Pushover notification failed: ' + error);             throw 'Pushover notification failed: ' + error;         }       description: |         Please refer to setup guide here: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/pushover                  Set token parameter with to your Pushover application key.         When assigning Pushover media to the Zabbix user - add user key into send to field.       message_templates:         - event_source: TRIGGERS           operation_mode: PROBLEM           subject: 'Problem: {EVENT.NAME}'           message: |             Problem started at {EVENT.TIME} on {EVENT.DATE}             Problem name: {EVENT.NAME}             Host: {HOST.NAME}             Severity: {EVENT.SEVERITY}             Operational data: {EVENT.OPDATA}             Original problem ID: {EVENT.ID}             {TRIGGER.URL}         - event_source: TRIGGERS           operation_mode: RECOVERY           subject: 'Resolved in {EVENT.DURATION}: {EVENT.NAME}'           message: |             Problem has been resolved at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}             Problem name: {EVENT.NAME}             Problem duration: {EVENT.DURATION}             Host: {HOST.NAME}             Severity: {EVENT.SEVERITY}             Original problem ID: {EVENT.ID}             {TRIGGER.URL}         - event_source: TRIGGERS           operation_mode: UPDATE           subject: 'Updated problem in {EVENT.AGE}: {EVENT.NAME}'           message: |             {USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.             {EVENT.UPDATE.MESSAGE}                          Current problem status is {EVENT.STATUS}, age is {EVENT.AGE}, acknowledged: {EVENT.ACK.STATUS}.         - event_source: DISCOVERY           operation_mode: PROBLEM           subject: 'Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}'           message: |             Discovery rule: {DISCOVERY.RULE.NAME}                          Device IP: {DISCOVERY.DEVICE.IPADDRESS}             Device DNS: {DISCOVERY.DEVICE.DNS}             Device status: {DISCOVERY.DEVICE.STATUS}             Device uptime: {DISCOVERY.DEVICE.UPTIME}                          Device service name: {DISCOVERY.SERVICE.NAME}             Device service port: {DISCOVERY.SERVICE.PORT}             Device service status: {DISCOVERY.SERVICE.STATUS}             Device service uptime: {DISCOVERY.SERVICE.UPTIME}         - event_source: AUTOREGISTRATION           operation_mode: PROBLEM           subject: 'Autoregistration: {HOST.HOST}'           message: |             Host name: {HOST.HOST}             Host IP: {HOST.IP}             Agent port: {HOST.PORT} ```
ru	#### Формат экспорта  Экспорт в YAML:  ```yaml zabbix_export:   version: '6.0'   date: '2021-08-31T13:34:17Z'   media_types:     - name: Pushover       type: WEBHOOK       parameters:         - name: endpoint           value: 'https://api.pushover.net/1/messages.json'         - name: eventid           value: '{EVENT.ID}'         - name: event_nseverity           value: '{EVENT.NSEVERITY}'         - name: event_source           value: '{EVENT.SOURCE}'         - name: event_value           value: '{EVENT.VALUE}'         - name: expire           value: '1200'         - name: message           value: '{ALERT.MESSAGE}'         - name: priority_average           value: '0'         - name: priority_default           value: '0'         - name: priority_disaster           value: '0'         - name: priority_high           value: '0'         - name: priority_information           value: '0'         - name: priority_not_classified           value: '0'         - name: priority_warning           value: '0'         - name: retry           value: '60'         - name: title           value: '{ALERT.SUBJECT}'         - name: token           value: '<PUSHOVER TOKEN HERE>'         - name: triggerid           value: '{TRIGGER.ID}'         - name: url           value: '{$ZABBIX.URL}'         - name: url_title           value: Zabbix         - name: user           value: '{ALERT.SENDTO}'       max_sessions: '0'       script: |         try {             var params = JSON.parse(value),                 request = new HttpRequest(),                 data,                 response,                 severities = [                     {name: 'not_classified', color: '#97AAB3'},                     {name: 'information', color: '#7499FF'},                     {name: 'warning', color: '#FFC859'},                     {name: 'average', color: '#FFA059'},                     {name: 'high', color: '#E97659'},                     {name: 'disaster', color: '#E45959'},                     {name: 'resolved', color: '#009900'},                     {name: 'default', color: '#000000'}                 ],                 priority;                      if (typeof params.HTTPProxy === 'string' && params.HTTPProxy.trim() !== '') {                 request.setProxy(params.HTTPProxy);             }                      if ([0, 1, 2, 3].indexOf(parseInt(params.event_source)) === -1) {                 throw 'Incorrect "event_source" parameter given: "' + params.event_source + '".\nMust be 0-3.';             }                      if (params.event_value !== '0' && params.event_value !== '1'                 && (params.event_source === '0' || params.event_source === '3')) {                 throw 'Incorrect "event_value" parameter given: ' + params.event_value + '\nMust be 0 or 1.';             }                      if ([0, 1, 2, 3, 4, 5].indexOf(parseInt(params.event_nseverity)) === -1) {                 params.event_nseverity = '7';             }                      if (params.event_value === '0') {                 params.event_nseverity = '6';             }                      priority = params['priority_' + severities[params.event_nseverity].name] || params.priority_default;                      if (isNaN(priority) || priority < -2 || priority > 2) {                 throw '"priority" should be -2..2';             }                      if (params.event_source === '0' && isNaN(params.triggerid)) {                 throw 'field "triggerid" is not a number';             }                      if (isNaN(params.eventid)) {                 throw 'field "eventid" is not a number';             }                      if (typeof params.message !== 'string' || params.message.trim() === '') {                 throw 'field "message" cannot be empty';             }                      data = {                 token: params.token,                 user: params.user,                 title: params.title,                 message: params.message,                 url: (params.event_source === '0')                      ? params.url + '/tr_events.php?triggerid=' + params.triggerid + '&eventid=' + params.eventid                     : params.url,                 url_title: params.url_title,                 priority: priority             };                      if (priority == 2) {                 if (isNaN(params.retry) || params.retry < 30) {                     throw 'field "retry" should be a number with value of at least 30 if "priority" is set to 2';                 }                          if (isNaN(params.expire) || params.expire > 10800) {                     throw 'field "expire" should be a number with value of at most 10800 if "priority" is set to 2';                 }                          data.retry = params.retry;                 data.expire = params.expire;             }                      data = JSON.stringify(data);             Zabbix.log(4, '[ Pushover Webhook ] Sending request: ' + params.endpoint + '\n' + data);                      request.addHeader('Content-Type: application/json');             response = request.post(params.endpoint, data);                      Zabbix.log(4, '[ Pushover Webhook ] Received response with status code ' + request.getStatus() + '\n' + response);                      if (response !== null) {                 try {                     response = JSON.parse(response);                 }                 catch (error) {                     Zabbix.log(4, '[ Pushover Webhook ] Failed to parse response received from Pushover');                     response = null;                 }             }                      if (request.getStatus() != 200 || response === null || typeof response !== 'object' || response.status !== 1) {                 if (response !== null && typeof response === 'object' && typeof response.errors === 'object'                         && typeof response.errors[0] === 'string') {                     throw response.errors[0];                 }                 else {                     throw 'Unknown error. Check debug log for more information.';                 }             }                      return 'OK';         }         catch (error) {             Zabbix.log(4, '[ Pushover Webhook ] Pushover notification failed: ' + error);             throw 'Pushover notification failed: ' + error;         }       description: |         Please refer to setup guide here: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/pushover                  Set token parameter with to your Pushover application key.         When assigning Pushover media to the Zabbix user - add user key into send to field.       message_templates:         - event_source: TRIGGERS           operation_mode: PROBLEM           subject: 'Problem: {EVENT.NAME}'           message: |             Problem started at {EVENT.TIME} on {EVENT.DATE}             Problem name: {EVENT.NAME}             Host: {HOST.NAME}             Severity: {EVENT.SEVERITY}             Operational data: {EVENT.OPDATA}             Original problem ID: {EVENT.ID}             {TRIGGER.URL}         - event_source: TRIGGERS           operation_mode: RECOVERY           subject: 'Resolved in {EVENT.DURATION}: {EVENT.NAME}'           message: |             Problem has been resolved at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}             Problem name: {EVENT.NAME}             Problem duration: {EVENT.DURATION}             Host: {HOST.NAME}             Severity: {EVENT.SEVERITY}             Original problem ID: {EVENT.ID}             {TRIGGER.URL}         - event_source: TRIGGERS           operation_mode: UPDATE           subject: 'Updated problem in {EVENT.AGE}: {EVENT.NAME}'           message: |             {USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.             {EVENT.UPDATE.MESSAGE}                          Current problem status is {EVENT.STATUS}, age is {EVENT.AGE}, acknowledged: {EVENT.ACK.STATUS}.         - event_source: DISCOVERY           operation_mode: PROBLEM           subject: 'Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}'           message: |             Discovery rule: {DISCOVERY.RULE.NAME}                          Device IP: {DISCOVERY.DEVICE.IPADDRESS}             Device DNS: {DISCOVERY.DEVICE.DNS}             Device status: {DISCOVERY.DEVICE.STATUS}             Device uptime: {DISCOVERY.DEVICE.UPTIME}                          Device service name: {DISCOVERY.SERVICE.NAME}             Device service port: {DISCOVERY.SERVICE.PORT}             Device service status: {DISCOVERY.SERVICE.STATUS}             Device service uptime: {DISCOVERY.SERVICE.UPTIME}         - event_source: AUTOREGISTRATION           operation_mode: PROBLEM           subject: 'Autoregistration: {HOST.HOST}'           message: |             Host name: {HOST.HOST}             Host IP: {HOST.IP}             Agent port: {HOST.PORT} ```

en-us	##### Export format  ``` {.yaml}   groups:     - name: 'Zabbix servers' ```
ru	##### Формат экспорта  ``` {.yaml}   groups:     - name: 'Zabbix servers' ```

en-us	#### Exporting a host  Export the configuration of a host as an XML string.  Request:  ```json {     "jsonrpc": "2.0",     "method": "configuration.export",     "params": {         "options": {             "hosts": [                 "10161"             ]         },         "format": "xml"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<zabbix_export><version>5.4</version><date>2020-03-13T15:31:45Z</date><groups><group><uuid>6f6799aa69e844b4b3918f779f2abf08</uuid><name>Zabbix servers</name></group></groups><hosts><host><host>Export host</host><name>Export host</name><groups><group><name>Zabbix servers</name></group></groups><interfaces><interface><interface_ref>if1</interface_ref></interface></interfaces><items><item><name>Item</name><key>item.key</key><delay>30s</delay><tags><tag><tag>Application</tag><value>CPU</value></tag></tags><valuemap><name>Host status</name></valuemap><interface_ref>if1</interface_ref><request_method>POST</request_method></item></items><valuemaps><valuemap><name>Host status</name><mappings><mapping><value>0</value><newvalue>Up</newvalue></mapping><mapping><value>2</value><newvalue>Unreachable</newvalue></mapping></mappings></valuemap></valuemaps></host></hosts></zabbix_export>\n",     "id": 1 } ```
ru	#### Экспорт хоста  Экспортирует конфигурацию хоста в виде строки XML.  Запрос:  ```json {    "jsonrpc": "2.0",    "method": "configuration.export",    "params": {       "options": {          "hosts": [             "10161"          ]       },       "format": "xml"    },    "auth": "038e1d7b1735c6a5436ee9eae095879e",    "id": 1 } ```  Ответ:  ```json {    "jsonrpc": "2.0",    "result": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<zabbix_export><version>5.4</version><date>2020-03-13T15:31:45Z</date><groups><group><uuid>6f6799aa69e844b4b3918f779f2abf08</uuid><name>Zabbix servers</name></group></groups><hosts><host><host>Export host</host><name>Export host</name><groups><group><name>Zabbix servers</name></group></groups><interfaces><interface><interface_ref>if1</interface_ref></interface></interfaces><items><item><name>Item</name><key>item.key</key><delay>30s</delay><tags><tag><tag>Application</tag><value>CPU</value></tag></tags><valuemap><name>Host status</name></valuemap><interface_ref>if1</interface_ref><request_method>POST</request_method></item></items><valuemaps><valuemap><name>Host status</name><mappings><mapping><value>0</value><newvalue>Up</newvalue></mapping><mapping><value>2</value><newvalue>Unreachable</newvalue></mapping></mappings></valuemap></valuemaps></host></hosts></zabbix_export>\n",    "id": 1 } ```

en-us	#### Exporting  To export hosts, do the following:  -   Go to: *Configuration* → *Hosts* -   Mark the checkboxes of the hosts to export -   Click on *Export* below the list  ![](../../../assets/en/manual/xml_export_import/export_hosts.png)  Depending on the selected format, hosts are exported to a local file with a default name:  -   *zabbix\_export\_hosts.yaml* - in YAML export (default option for     export) -   *zabbix\_export\_hosts.xml* - in XML export -   *zabbix\_export\_hosts.json* - in JSON export
ru	#### Экспорт  Чтобы экспортировать узел сети, сделайте следующее:  -  Перейдите к: *Настройка* → *Узлы сети* -  Отметьте галочками узлы сети для экспорта -  Нажмите *Экспорт* под списком  ![](../../../assets/en/manual/xml_export_import/export_hosts.png)  В зависимости от выбранного формата узлы сети экспортируются в локальный файл с именем по умолчанию:  -  *zabbix\_export\_hosts.yaml* - при экспорте в YAML (опция по умолчанию для экспорта) -  *zabbix\_export\_hosts.xml* - при экспорте в XML -  *zabbix\_export\_hosts.json* - при экспорте в JSON

en-us	#### Exporting  To export media types, do the following:  -   Go to: *Administration* → *Media types* -   Mark the checkboxes of the media types to export -   Click on *Export* below the list  ![](../../../assets/en/manual/xml_export_import/export_mediatypes.png)  Depending on the selected format, media types are exported to a local file with a default name:  -   *zabbix\_export\_mediatypes.yaml* - in YAML export (default option     for export) -   *zabbix\_export\_mediatypes.xml* - in XML export -   *zabbix\_export\_mediatypes.json* - in JSON export
ru	#### Экспорт  Для экспорта способов оповещений сделайте следующее:  -   Перейдите к: *Администрирование* → *Способы оповещений* -   Отметьте способы оповещений, которые нужно экспортировать -   Нажмите на *Экспорт* ниже списка  ![](../../../assets/en/manual/xml_export_import/export_mediatypes.png)  В зависимости от выбранного формата, способы оповещений экспортируются в локальный файл с именем по умолчанию:  -   *zabbix\_export\_mediatypes.yaml* - при экспорте в YAML (опция по умолчанию для экспорта) -   *zabbix\_export\_mediatypes.xml* - при экспорте в XML -   *zabbix\_export\_mediatypes.json* - при экспорте в JSON

en-us	#### Exporting  To export network maps, do the following:  -   Go to: *Monitoring* → *Maps* -   Mark the checkboxes of the network maps to export -   Click on *Export* below the list  ![](../../../assets/en/manual/xml_export_import/export_maps.png)  Depending on the selected format, maps are exported to a local file with a default name:  -   *zabbix\_export\_maps.yaml* - in YAML export (default option for     export) -   *zabbix\_export\_maps.xml* - in XML export -   *zabbix\_export\_maps.json* - in JSON export
ru	#### Экспорт  Для экспорта карт сети сделайте следующее:  -   Перейдите к: *Мониторинг → Карты сети* -   Отметьте карты сети, которые нужно экспортировать -   Нажмите на *Экспорт* ниже списка  ![](../../../assets/en/manual/xml_export_import/export_maps.png)  В зависимости от выбранного формата, карты сети экспортируются в локальный файл с именем по умолчанию:  -   *zabbix\_export\_maps.yaml* - при экспорте в YAML (опция по умолчанию для экспорта) -   *zabbix\_export\_maps.xml* - при экспорте в XML -   *zabbix\_export\_maps.json* - при экспорте в  JSON

en-us	#### Exporting  To export templates, do the following:  -   Go to: *Configuration* → *Templates* -   Mark the checkboxes of the templates to export -   Click on *Export* below the list  ![](../../../assets/en/manual/xml_export_import/export_templates.png)  Depending on the selected format, templates are exported to a local file with a default name:  -   *zabbix\_export\_templates.yaml* - in YAML export (default option     for export) -   *zabbix\_export\_templates.xml* - in XML export -   *zabbix\_export\_templates.json* - in JSON export
ru	#### Экспорт  Для экспорта шаблонов выполните следующее:  -   Перейдите к: *Настройка* → *Шаблоны* -   Отметьте шаблоны, которые нужно экспортировать -   Нажмите на *Экспорт* ниже списка  ![](../../../assets/en/manual/xml_export_import/export_templates.png)  В зависимости от выбранного формата шаблоны будут экспортированы в локальный файл со следующим именем по умолчанию:  -   *zabbix\_export\_templates.yaml* - при экспорте в YAML (опция экспорта по умолчанию) -   *zabbix\_export\_templates.xml* - при экспорте в XML -   *zabbix\_export\_templates.json* - при экспорте в JSON

en-us	 ###### Export request  A request to execute the Export function of the Exporter interface.  |   |   | |---|---| |direction|agent → plugin| |response|no|  Parameters specific to export requests:  |Name|Type|Comments| |---------|--------|----------| |key|string|The plugin key.| |parameters|array of strings (optional)|The parameters for Export function.|  *Example:*      {"id":4,"type":6,"key":"test.key","parameters":["foo","bar"]}
ru	###### Запрос экспорта  Запрос на выполнение функции экспорта (Export) интерфейса Exporter.  |   |   | |---|---| |направление|агент → плагин| |ответ|нет|  Параметры, специфичные для запросов экспорта:  |Имя|Тип|Комментарии| |---------|--------|----------| |key|string|Ключ плагина.| |parameters|array of strings (опционально)|Параметры для функции Export.|  *Пример:*      {"id":4,"type":6,"key":"test.key","parameters":["foo","bar"]}

en-us	 ###### Export response  Response from the Export function of the Exporter interface.  |   |   | |---|---| |direction|plugin → agent| |response|n/a|  Parameters specific to export responses:  |Name|Type|Comments| |---------|--------|----------| |value|string (optional) |Response value from the Export function. Absent, if error is returned.| |error|string (optional) |Error message if the Export function has not been executed successfully. Absent, if value is returned.|  *Examples:*      {"id":5,"type":7,"value":"response"}  or      {"id":5,"type":7,"error":"error message"}
ru	###### Ответ экспорта  Ответ из функции Export интерфейса Exporter.  |   |   | |---|---| |направление|плагин → агент| |ответ|неприменимо|  Параметры, специфичные для ответов экспорта:  |Имя|Тип|Комментарии| |---------|--------|----------| |value|string (опционально) |Значение ответа из функции Export. Отсутствует, если возвращается ошибка.| |error|string (опционально) |Сообщение об ошибке, если функция Export не была выполнена успешно. Отсутствует, если возвращается значение (value).|  *Примеры:*      {"id":5,"type":7,"value":"response"}  или      {"id":5,"type":7,"error":"сообщение об ошибке"}

en-us	#### Exposed metrics  The stats items gather the statistics in bulk and return a JSON, which is the basis for dependent items to get their data from. The following [internal metrics](/manual/config/items/itemtypes/internal) are returned by either of the two items:  -   `zabbix[boottime]` -   `zabbix[hosts]` -   `zabbix[items]` -   `zabbix[items_unsupported]` -   `zabbix[preprocessing_queue]` (server only) -   `zabbix[process,<type>,<mode>,<state>]` (only process type based     statistics) -   `zabbix[rcache,<cache>,<mode>]` -   `zabbix[requiredperformance]` -   `zabbix[triggers]` (server only) -   `zabbix[uptime]` -   `zabbix[vcache,buffer,<mode>]` (server only) -   `zabbix[vcache,cache,<parameter>]` -   `zabbix[version]` -   `zabbix[vmware,buffer,<mode>]` -   `zabbix[wcache,<cache>,<mode>]` ('trends' cache type server only)
ru	#### Предоставляемые метрики  Элементы данных собирают статистику одним запросом и возвращают JSON, который является основой зависимых элементов данных и из которого они получают данные. Любым из двух элементов данных возвращаются следующие [внутренние метрики](/manual/config/items/itemtypes/internal):  -   `zabbix[boottime]` -   `zabbix[hosts]` -   `zabbix[items]` -   `zabbix[items_unsupported]` -   `zabbix[preprocessing_queue]` (только сервер) -   `zabbix[process,<тип>,<режим>,<состояние>]` (статистика только на основе типов процессов) -   `zabbix[rcache,<кэш>,<режим>]` -   `zabbix[requiredperformance]` -   `zabbix[triggers]` (только сервер) -   `zabbix[uptime]` -   `zabbix[vcache,buffer,<режим>]` (только сервер) -   `zabbix[vcache,cache,<параметр>]` -   `zabbix[version]` -   `zabbix[vmware,buffer,<режим>]` -   `zabbix[wcache,<кэш>,<режим>]` (тип кэша 'trends' только сервер)

en-us	 ### Expression macros  {ITEM.KEY<1-9>} macros are now supported inside [expression macros](/manual/config/macros/expression_macros).
ru	### Макросы выражений  Макросы {ITEM.KEY<1-9>} теперь поддерживаются в [макросах выражений](/manual/config/macros/expression_macros).

en-us	#### Expressions with unknown operands  Generally an unknown operand (such as an unsupported item) in the expression will immediately render the trigger value to `Unknown`.  However, in some cases unknown operands (unsupported items, function errors) are admitted into expression evaluation:  -   The `nodata()` function is evaluated regardless of whether the referenced item is supported or not. -   Logical expressions with OR and AND can be evaluated to known values     in two cases regardless of unknown operands:     -   **Case 1**: "`1 or some_function(unsupported_item1) or some_function(unsupported_item2) or ...`" can be evaluated to known result ('1' or "Problem"),     -   **Case 2**: "`0 and some_function(unsupported_item1) and some_function(unsupported_item2) and ...`" can be evaluated to known result ('0' or "OK").\         Zabbix tries to evaluate such logical expressions by taking unsupported         items as unknown operands. In the two cases above a known value will be produced ("Problem" or "OK", respectively); in **all other** cases the trigger will evaluate to `Unknown`. -   If the function evaluation for a supported item results in error, the     function value becomes `Unknown` and it takes part as unknown operand      in further expression evaluation.  Note that unknown operands may "disappear" only in logical expressions as described above. In arithmetic expressions unknown operands always lead to the result `Unknown` (except division by 0).  ::: noteimportant An expression that results in `Unknown` does not change the trigger state ("Problem/OK").  So, if it was "Problem" (see Case 1), it stays in the same problem state even if the known  part is resolved ('1' becomes '0'), because the expression is now evaluated to `Unknown`  and that does not change the trigger state. :::  If a trigger expression with several unsupported items evaluates to `Unknown` the error message in the frontend refers to the last unsupported item evaluated.
ru	#### Выражения с неизвестными операндами  В большинстве случаев, неизвестный операнд (такой как неподдерживаемый элемент данных) в выражении незамедлительно изменит значение триггера на `Неизвестно`.  Однако, в некоторых случаях неизвестные операнды (неподдерживаемые элементы данных, ошибки функций) допустимы при вычисления выражений:  -   Функция nodata() вычисляется независимо от того, поддерживается элемент данных, на который она ссылается, или же не поддерживается. -   Логические выражения с ИЛИ и И могут быть вычислены в известные значения независимо от неизвестных операндов в двух случаях:     -  **Случай 1**: "1 `or` некая\_функция(неподдерживаемый\_элемент\_данных1) `or` некая\_функция(неподдерживаемый\_элемент\_данных2) `or` ..." может быть вычислено с известным результатом ('1' или "Проблема"),     -  **Случай 2**: "0 `and` некая\_функция(неподдерживаемый\_элемент\_данных1) `and` некая\_функция(неподдерживаемый\_элемент\_данных2) `and` ..." может быть вычислено с известнвм результатом ('0' или "OK").\   Zabbix пытается вычислить такие логические выражения, принимая неподдерживаемые элементы данных как `Неизвестные` значения. В двух случаях, упомянутых выше, будет производиться известное значение; в остальных случаях значением триггера будет `Неизвестно`. -   Если вычисление функции по поддерживаемому элементу данных приведет к ошибке, значением функции будет `Неизвестно` и оно будет частью дальнейшего вычисления выражения как неизвестный операнд.  Обратите внимание на то, что неизвестные операнды могут "исчезать" только в логических выражениях, описанных выше. В арифметических выражениях неизвестные значения всегда приводят к `Неизвестному` результату (за исключением деления на 0).  ::: noteimportant Выражение, приводящее к `Неизвестно`, не меняет состояние триггера ("Проблема/OK").  Таком образом, если он был в состоянии "Проблема" (смотри Случай 1), то остаётся в том же проблемном состоянии даже если известная часть разрешается ('1' становится '0'), потому что выражение теперь вычисляется в `Неизвестно`, а это не меняет состояние триггера. :::  Если выражение триггера с несколькими неподдерживаемыми элементами данных вычисляется как `Неизвестное`, сообщение об ошибке в веб-интерфейсе ссылается на последний вычисленный неподдерживаемый элемент данных.

en-us	 ### ExpressMS messenger webhook API changed  API version changed to v4 in ExpressMS messenger webhook.
ru	### Смена версии API в вебхуке мессенджера ExpressMS  В вебхуке мессенджера ExpressMS версия API изменена на v4.

en-us	#### Extended logging  The data gathered by VMware collector can be logged for detailed debugging using debug level 5. This level can be set in [server](/manual/appendix/config/zabbix_server) and [proxy](/manual/appendix/config/zabbix_proxy) configuration files or using a runtime control option (`-R log_level_increase="vmware collector,N"`, where N is a process number). The following examples demonstrate how extended logging can be started provided debug level 4 is already set:      # Increase log level of all vmware collectors:     zabbix_server -R log_level_increase="vmware collector"      # Increase log level of second vmware collector:     zabbix_server -R log_level_increase="vmware collector,2"  If extended logging of VMware collector data is not required it can be stopped using the `-R log_level_decrease` option.
ru	#### Расширенное журналирование  Можно записывать в файл журнала сбор данных коллектором VMware, используя уровень отладки 5. Этот уровень можно задать в файлах конфигурации [сервера](/manual/appendix/config/zabbix_server) и [прокси](/manual/appendix/config/zabbix_proxy) или используя опцию выполнения административных функций (`-R log_level_increase="vmware collector,N"`, где N является номером процесса). При условии, что уровень отладки 4 уже задан, расширенное журналирование можно запустить так, как демонстрируется в следующих примерах:      # Увеличение уровня журналирования по всем коллекторам vmware:     zabbix_server -R log_level_increase="vmware collector"      # Увеличение уровня журналирования по второму коллектору vmware:     zabbix_server -R log_level_increase="vmware collector,2"  Если расширенное журналирование данных коллекторов VMware не требуется, его можно остановить командой с опцией `-R log_level_decrease`.

en-us	#### Extended monitoring  Sometimes it is necessary to log received HTML page content. This is especially useful if some web scenario step fails. Debug level 5 (trace) serves that purpose. This level can be set in [server](/manual/appendix/config/zabbix_server) and [proxy](/manual/appendix/config/zabbix_proxy) configuration files or using a runtime control option (`-R log_level_increase="http poller,N"`, where N is the process number). The following examples demonstrate how extended monitoring can be started provided debug level 4 is already set:      # Increase log level of all http pollers:     zabbix_server -R log_level_increase="http poller"      # Increase log level of second http poller:     zabbix_server -R log_level_increase="http poller,2"  If extended web monitoring is not required it can be stopped using the `-R log_level_decrease` option.
ru	#### Расширенный мониторинг  Иногда необходимо записать в журнал полученное содержимое HTML страницы. Это особенно полезно, если некоторые шаги веб-сценария завершаются с ошибкой. Для этой цели служит уровень отладки 5 (трассировка). Этот уровень можно указать в файлах конфигурации [сервера](/manual/appendix/config/zabbix_server) и [прокси](/manual/appendix/config/zabbix_proxy) или использовать опции выполнения административных функций (`-R log_level_increase="http poller,N"`, где N является номером процесса). При условии, что уровень отладки 4 уже задан, расширенный мониторинг можно запустить так, как демонстрируется в следующих примерах:      # Увеличение уровня журналирования по всем http поллерам:     zabbix_server -R log_level_increase="http poller"      # Увеличение уровня журналирования по второму http поллеру:     zabbix_server -R log_level_increase="http poller,2"  Если расширенный мониторинг не требуется, его можно остановить, используя опцию `-R log_level_decrease`.

en-us	 #### Extended SNMP gateway functionality  SNMP gateway can now provide information about triggers in a problem state and reveal host information in trigger details.  Additionally, it is now possible to limit the rate of SNMP traps sent by SNMP gateway.  The list of supported OIDs has been extended with a new OID **.10** for a comma-delimited list of trigger hostnames.  New parameters have been added to the SNMP gateway configuration file:  - *ProblemBaseOID* - OID of the problem trigger table; - *ProblemMinSeverity* - minimum severity, triggers having lower severity will not be included; - *ProblemHideAck* - if specified, only triggers with unacknowledged problems will be included; - *ProblemTagFilter* - if specified, only triggers with the specified tag name will be included; - *TrapTimer* - if set, Zabbix will send no more than one trap of the highest severity in the given time frame.  For details, see [Zabbix SNMP Gateway](https://git.zabbix.com/projects/ZT/repos/snmp-gateway/browse/README.md).
ru	#### Расширенные возможности SNMP шлюза  SNMP шлюз теперь может предоставлять информацию о триггерах в состоянии проблемы и раскрывать информацию об узле сети в деталях к триггеру.   Кроме того, теперь имеется возможность ограничить частоту SNMP трапов, отправляемых SNMP шлюзом.   Список поддерживаемых OID дополнен новым OID **.10** со списком разделенных запятой узлов сети триггера.  В файл конфигурации SNMP шлюза добавлены новые параметры:  - *ProblemBaseOID* -- OID таблицы триггеров с проблемами; - *ProblemMinSeverity* -- минимальная важность, триггеры с важностью менее указанной не будут включены; - *ProblemHideAck* -- если указано, будут включены только те триггеры, которые имеют неподтвержденные проблемы; - *ProblemTagFilter* -- если указано, будут включены только те триггеры, которые имеют заданное имя тега; - *TrapTimer* -- если задано, Zabbix будет отправлять не более одного трапа с наивысшей важностью за заданный период времени.  Для получения более подробных сведений обратитесь к [Zabbix SNMP Gateway](https://git.zabbix.com/projects/ZT/repos/snmp-gateway/browse/README.md).

en-us	#### External check result  The return value of an external check is a standard output together with a standard error produced by the check.  ::: noteimportant An item that returns text (character, log, or text type of information) will not become unsupported in case of a standard error output. :::  The return value is limited to 16MB (including trailing whitespace that is truncated); [database limits](/manual/config/items/item#text_data_limits) also apply.  If the requested script is not found or Zabbix server has no permissions to execute it, the item will become unsupported and a corresponding error message will be displayed.  In case of a timeout, the item will become unsupported, a corresponding error message will be displayed, and the process forked for the script will be terminated.
ru	#### Результат внешней проверки  Возвращаемым значением внешней проверки является стандартный вывод вместе со стандартным выводом ошибок, производимые проверкой.  ::: noteimportant Элемент данных, возвращающий текст (символ,​ журнал или текстовый типы данных), не станет неподерживаемым в случае появления чего-либо в стандартном выводе ошибок. :::  Возвращаемое значение ограничено 16 МБ (включая конечные пробелы, которые усекаются); также применяются [ограничения базы данных](/manual/config/items/item#ограничения-текстовых-данных).  В случае, если выполняемый скрипт не найден или Zabbix сервер не имеет необходимых прав на его запуск, элемент данный станет неподдерживаемым и отобразится соответствующее сообщение об ошибке.  В случае превышения времени ожидания, элемент данных также станет неподдерживаемым, будет отображено соответствующее сообщение об ошибке, а отдельный процесс этого скрипта будет ликвидирован.

en-us	 **External plugin loader**  Previously, plugins could only be compiled into Zabbix agent 2, which required recompiling the agent every time you need to change the set of available plugins. Now, with the addition of the external plugin loader, plugins don't have to be integrated into the agent 2 directly and can be added as separate external add-ons (loadable plugins), thus making the creation process of additional plugins for gathering new monitoring metrics easier.
ru	**Загрузчик внешних плагинов**  Ранее плагины можно было компилировать только вместе с самим Zabbix агентом 2, что требовало перекомпиляции агента каждый раз, когда вам требовалось изменить список доступных плагинов. Теперь, после добавления загрузчика внешних плагинов, более не требуется встраивать плагины напрямую в агента 2; их можно добавлять в виде отдельных внешних аддонов (загружаемых плагинов), что упрощает процесс создания дополнительных плагинов для сбора новых метрик.

en-us	#### Extracting matching part of regular expression  Sometimes we may want to extract only the interesting value from a target file instead of returning the whole line when a regular expression match is found.  Since Zabbix 2.2.0, log items have the ability to extract desired values from matched lines. This is accomplished by the additional **output** parameter in `log` and `logrt` items.  Using the 'output' parameter allows to indicate the "capturing group" of the match that we may be interested in.  So, for example      log[/path/to/the/file,"large result buffer allocation.*Entries: ([0-9]+)",,,,\1]  should allow returning the entry count as found in the content of:      Fr Feb 07 2014 11:07:36.6690 */ Thread Id 1400 (GLEWF) large result     buffer allocation - /Length: 437136/Entries: 5948/Client Ver: >=10/RPC     ID: 41726453/User: AUser/Form: CFG:ServiceLevelAgreement  Only the number will be returned because **\\1** refers to the first and only capturing group: **(\[0-9\]+)**.  And, with the ability to extract and return a number, the value can be used to define triggers.
ru	#### Извлечение совпадающей части регулярного выражения  Иногда при нахождении совпадения с регулярным выражением мы можем хотеть извлекать из требуемого файла только интересующие значения вместо получения всей строки.  Начиная с Zabbix 2.2.0, элементы данных файлов журналов имеют возможность извлекать из строк файла желаемые значения. Это достигается с помощью дополнительного параметра **вывод** у элементов данных `log` и `logrt`.  Использование параметра 'вывод' позволяет обозначить "подгруппу совпадения", в которой мы можем быть заинтересованы.  Итак, например      log[/путь/к/файлу,"large result buffer allocation.*Entries: ([0-9]+)",,,,\1]  должен позволить получить количество элементов (Entries) из следующего содержимого:      Fr Feb 07 2014 11:07:36.6690 */ Thread Id 1400 (GLEWF) large result     buffer allocation - /Length: 437136/Entries: 5948/Client Ver: >=10/RPC     ID: 41726453/User: AUser/Form: CFG:ServiceLevelAgreement  Вернется только число, так как **\\1** ссылается только на первую и единственную интересующую подгруппу: **(\[0-9\]+)**  И, вместе с возможностью извлечения и получения числа, значение можно использовать в определениях триггеров.

en-us	### Failover to standby node  Zabbix will fail over to another node automatically if the active node stops. There  must be at least one node in standby status for the failover to happen.  How fast will the failover be? All nodes update their last access time (and status, if  it is changed) every 5 seconds. So:   -   If the active node shuts down and manages to report its status  as "stopped", another node will take over within **5 seconds**.  -   If the active node shuts down/becomes unavailable without being able to update  its status, standby nodes will wait for the **failover delay** + 5 seconds to take over  The failover delay is configurable, with the supported range between 10 seconds and 15  minutes (one minute by default). To change the failover delay, you may run:  ``` zabbix_server -R ha_set_failover_delay=5m ```
ru	### Автоматическое переключение на резервную ноду  Zabbix автоматически переключится на другую ноду, если активная нода остановится. Для автоматического переключения необходимо иметь по крайней мере одну ноду в состоянии резерва.  Как быстро произойдет автоматическое переключение? Все ноды обновляют своё время последнего доступа (и состояния, если оно меняется) каждые 5 секунд. Таким образом:   -  Если активная нода выключается и успевает сообщить своё состояние как "остановлена", другая нода подхватит нагрузку в течение **5 секунд**.  -  Если активная нода выключается / становится недоступной без возможности обновить своё состояние, резервные ноды будут ожидать **задержку автоматического переключения** + 5 секунд перед тем как перенять нагрузку на себя.  Задержка автоматического переключения настраивается, поддерживаемый диапазон от 10 секунд до 15 минут (по умолчанию одна минута). Чтобы изменить задержку автоматического переключения, вы можете выполнить:  ``` zabbix_server -R ha_set_failover_delay=5m ```

en-us	 ##### Favorite custom graphs no longer supported    It is no longer possible to add custom graphs to favorites in  *Monitoring* -> *Hosts* -> *Graphs*. After the upgrade any existing custom  graphs will be removed from favorites.   
ru	##### Избранные пользовательские графики более не поддерживаются    Более невозможно добавить пользовательские графики в избранное в *Мониторинг* -> *Узлы сети* -> *Графики*. После обновления, любые из существующих пользовательских графиков будут удалены из избранного.   

en-us	##### Field size limit Maximum field size has been increased for the following fields:  - [Item preprocessing](/manual/config/items/preprocessing#configuration) parameters - [Media type](/manual/config/notifications/media#common-parameters) message
ru	##### Ограничение размера полей Максимальный размер поля увеличен для следующих полей:  - Параметры [предобработки элементов данных](/manual/config/items/preprocessing#настройка) - Сообщения в [способах оповещения](/manual/config/notifications/media#общие-параметры)

en-us	##### File example  ``` {.php} <?php  return [     'BRAND_LOGO' => './images/custom_logo.png',     'BRAND_LOGO_SIDEBAR' => './images/custom_logo_sidebar.png',     'BRAND_LOGO_SIDEBAR_COMPACT' => './images/custom_logo_sidebar_compact.png',     'BRAND_FOOTER' => '© Zabbix',     'BRAND_HELP_URL' => 'https://www.example.com/help/' ]; ```
ru	№#### Пример файла  ``` {.php} <?php  return [  · 'BRAND_LOGO' => './images/custom_logo.png',  · 'BRAND_LOGO_SIDEBAR' => './images/custom_logo_sidebar.png',  · 'BRAND_LOGO_SIDEBAR_COMPACT' => './images/custom_logo_sidebar_compact.png',  · 'BRAND_FOOTER' => '© Zabbix',  · 'BRAND_HELP_URL' => 'https://www.example.com/help/' ]; ```

en-us	##### - File locations  -   Configuration files are located in **/etc/zabbix**. -   Zabbix server, proxy and agent logfiles are located in     **/var/log/zabbix**. -   Zabbix frontend is located in **/usr/share/zabbix**. -   Home directory for the user **zabbix** is **/var/lib/zabbix**.
ru	##### - Расположение файлов  -   Файлы конфигурации расположены в **/etc/zabbix**. -   Файлы журналов (логи) Zabbix сервера, прокси и агента расположены в     **/var/log/zabbix**. -   Веб-интерфейс Zabbix расположен в **/usr/share/zabbix**. -   Домашний каталог пользователя **zabbix** — папка **/var/lib/zabbix**.

en-us	## FILES  */usr/local/etc/zabbix\_agent2.conf*   Default location of Zabbix agent 2 configuration file (if not modified during compile time).  [ ]{#lbAH}
ru	## ФАЙЛЫ  */usr/local/etc/zabbix\_agent2.conf*\ Расположение файла конфигурации Zabbix агента 2 по умолчанию (если не изменено во время компиляции).  [ ]{#lbAH}

en-us	## FILES  */usr/local/etc/zabbix\_agentd.conf*   Default location of Zabbix agent configuration file (if not modified during compile time).  [ ]{#lbAI}
ru	## ФАЙЛЫ  */usr/local/etc/zabbix\_agentd.conf*\ Расположение по умолчанию файла конфигурации агента Zabbix (если не изменено во время компиляции).  [ ]{#lbAI}

en-us	## FILES  */usr/local/etc/zabbix\_proxy.conf*   Default location of Zabbix proxy configuration file (if not modified during compile time).  [ ]{#lbAI}
ru	## ФАЙЛЫ  */usr/local/etc/zabbix\_proxy.conf*   Расположение по умолчанию файла конфигурации Zabbix прокси (если не изменено во время компиляции).  [ ]{#lbAI}

en-us	## FILES  */usr/local/etc/zabbix\_server.conf*   Default location of Zabbix server configuration file (if not modified during compile time).  [ ]{#lbAI}
ru	## ФАЙЛЫ  */usr/local/etc/zabbix\_server.conf*   Расположение по умолчанию файла конфигурации Zabbix сервера (если не изменено во время компиляции).  [ ]{#lbAI}

en-us	## FILES  */usr/local/etc/zabbix\_web\_service.conf*   Default location of Zabbix web service configuration file (if not modified during compile time).  [ ]{#lbAG}
ru	## ФАЙЛЫ  */usr/local/etc/zabbix\_web\_service.conf*   Расположение по умолчанию файла конфигурации веб-сервиса Zabbix (если не изменено во время компиляции).  [ ]{#lbAG}

en-us	##### File system  Because of the trap file implementation, Zabbix needs the file system to support inodes to differentiate files (the information is acquired by a stat() call).
ru	##### Файловая система  Из-за реализации файла с трапами, для Zabbix требуется файловая система с поддержкой inode для того чтобы различать файлы (эта информация берется из вызова stat()).

en-us	#### Filter  A filter can be used to generate real items, triggers, and graphs only for entities that match the criteria. The **Filters** tab contains discovery rule filter definitions allowing to filter discovery values:  ![](../../../assets/en/manual/discovery/low_level_discovery/lld_fs_d.png)  |Parameter|Description| |--|--------| |*Type of calculation*|The following options for calculating filters are available:<br>**And** - all filters must be passed;<br>**Or** - enough if one filter is passed;<br>**And/Or** - uses *And* with different macro names and *Or* with the same macro name;<br>**Custom expression** - offers the possibility to define a custom calculation of filters. The formula must include all filters in the list. Limited to 255 symbols.| |*Filters*|The following filter condition operators are available: *matches*, *does not match*, *exists*, *does not exist*.<br>*Matches* and *does not match* operators expect a [Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE). For instance, if you are only interested in C:, D:, and E: file systems, you could put {\#FSNAME} into "Macro" and "\^C\|\^D\|\^E" regular expression into "Regular expression" text fields. Filtering is also possible by file system types using {\#FSTYPE} macro (e.g. "\^ext\|\^reiserfs") and by drive types (supported only by Windows agent) using {\#FSDRIVETYPE} macro (e.g., "fixed").<br>You can enter a regular expression or reference a global [regular expression](/manual/regular_expressions) in "Regular expression" field.<br>In order to test a regular expression you can use "grep -E", for example: ````for f in ext2 nfs reiserfs smbfs; do echo $f | grep -E '^ext|^reiserfs' || echo "SKIP: $f"; done```` <br><br> {\#FSDRIVETYPE} macro on Windows is supported since Zabbix **3.0.0**.<br><br>*Exists* and *does not exist* operators allow to filter entities based on the presence or absence of the specified LLD macro in the response (supported since version 5.4.0).<br>Defining several filters is supported since Zabbix **2.4.0**.<br>Note that if a macro from the filter is missing in the response, the found entity will be ignored, unless a "does not exist" condition is specified for this macro.<br><br>A warning will be displayed, if the absence of a macro affects the expression result. For example, if {#B} is missing in:<br>{#A} matches 1 and {#B} matches 2 - will give a warning<br>{#A} matches 1 or {#B} matches 2 - no warning.<br>This flexible warning logic is supported since Zabbix 6.0.11.|  ::: notewarning A mistake or a typo in the regular expression used in the LLD rule (for example, an incorrect "File systems for discovery" regular expression) may cause deletion of thousands of configuration elements, historical values, and events for many hosts.  :::  ::: noteimportant Zabbix database in MySQL must be created as case-sensitive if file system names that differ only by case are to be discovered correctly. :::
ru	#### Фильтр правила обнаружения  Фильтры могут использоваться для того, чтобы генерировать реальные элементы данных, триггеры и графики только для объектов, соответствующих неким критериям. Вкладка **Фильтры** содержит определения правил фильтрации обнаружения, позволяющих фильтровать обнаруженные значения:  ![](../../../assets/en/manual/discovery/low_level_discovery/lld_fs_d.png)  |Параметр|Описание| |--|--------| |*Тип вычисления*|Доступны следующие опции расчёта фильтров:<br>**И** - должны выполниться все фильтры;<br>**Или** - достаточно выполнения одного фильтра;<br>**И/Или** - используется *И* для разных имён макросов и *Или* для одинаковых имён макросов;<br>**Пользовательское выражение** - появляется возможность указать пользовательское вычисление фильтров. Формула должна включать в себя все фильтры из списка. Ограничено 255 символами.| |*Фильтры*|Доступны следующие операторы условий фильтра: *совпадает*, *не соответствует*, *существует*, *не существует*.<br>Операторы *совпадает* и *не соответствует* ожидают [Perl Compatible Regular Expression](https://ru.wikipedia.org/wiki/PCRE) (PCRE). Например, если вы заинтересованы только в файловых системах C:, D: и E:, вы можете поместить {\#FSNAME} в текстовре поле «Макрос», а регулярное выражение «\^C\|\^D\|\^E» - в поле «Регулярное выражение». Фильтрация также возможна по типам файловых систем, при использовании макроса {\#FSTYPE} (например, «\^ext\|\^reiserfs») и по типу диска (поддерживается только Windows агентами), используя макрос {\#FSDRIVETYPE} (например, «fixed»).<br>В поле «Регулярное выражение» вы можете ввести регулярное выражение или ссылку на глобальное [регулярное выражение](/manual/regular_expressions).<br>Для проверки регулярного выражения вы можете использовать "grep -E", например: ````for f in ext2 nfs reiserfs smbfs; do echo $f | grep -E '^ext|^reiserfs' || echo "SKIP: $f"; done```` <br><br>Макрос {\#FSDRIVETYPE} на Windows поддерживается, начиная с Zabbix **3.0.0**.<br><br>Операторы *существует* и *не существует* позволяют фильтровать объекты на основе присутствия или отсутствия указанных LLD макросов в ответе (поддерживается с версии 5.4.0).<br>Определение нескольких фильтров поддерживается, начиная с Zabbix **2.4.0**.<br>Обратите внимание, что если какой-то макрос из фильтра пропущен в ответе, найденный объект будет игнорироваться, если только для этого макроса не задано условие «не существует».<br><br>Если отсутствие макроса влияет на результат выражения, то будет отображено предупреждение. Например, если {#B} отсутствует в:<br>{#A} совпадает 1 и {#B} совпадает 2 - выдаст предупреждение<br>{#A} совпадает 1 или {#B} совпадает 2 - предупреждения не будет.<br>Эта гибкая логика предупреждений поддерживается с версии Zabbix 6.0.11.|  ::: notewarning Ошибка или опечатка в регулярном выражении, которое используется в LLD правиле (например, некорректное регулярное выражение «File systems for discovery»), может привести к удалению тысяч элементов конфигурации, данных истории и событий на большом количестве узлов сети. :::  ::: noteimportant Если имена файловых систем различаются только по регистру, то для корректной работы обнаружения необходимо, чтобы база данных Zabbix в MySQL была создана чувствительной к регистру. :::

en-us	##### Filter buttons  |   |   | |--|--------| |![filter\_apply.png](../../../../../assets/en/manual/web_interface/filter_apply.png)|Apply specified filtering criteria (without saving).| |![filter\_reset.png](../../../../../assets/en/manual/web_interface/filter_reset.png)|Reset current filter and return to saved parameters of the current tab. On the main tab, this will clear the filter.| |![filter\_save\_as.png](../../../../../assets/en/manual/web_interface/filter_save_as.png)|Save current filter parameters in a new tab. Only available on the main tab.| |![filter\_update.png](../../../../../assets/en/manual/web_interface/filter_update.png)|Replace tab parameters with currently specified parameters. Not available on the main tab.|
ru	##### Кнопки фильтра  |   |   | |--|--------| |![filter\_apply.png](../../../../../assets/en/manual/web_interface/filter_apply.png) *(Применить)*|Применить выбранные критерии фильтрации (без сохранения).| |![filter\_reset.png](../../../../../assets/en/manual/web_interface/filter_reset.png) *(Сбросить)*|Сбросить текущие настройки фильтра и вернуться к сохранённым параметрам текущей вкладки. В главной вкладке при нажатии этой кнопки все поля фильтра вернутся к состоянию по умолчанию.| |![filter\_save\_as.png](../../../../../assets/en/manual/web_interface/filter_save_as.png) *(Сохранить как)*|Сохранить текущие параметры фильтра в новой вкладке. Доступно только в главной вкладке.| |![filter\_update.png](../../../../../assets/en/manual/web_interface/filter_update.png) *(Обновить)*|Изменить параметры вкладки на заданные в текущий момент. Недоступно в главной вкладке.|

en-us	#### Filter expression  The filter expression is an arithmetical expression in infix notation.  Supported operands:  |Operand|Description|Example| |--|------|------| |`"<text>"`<br>`'<text>'`|Text constant.|'value: \\'1\\''<br>"value: '1'"| |`<number>`|Numeric constant supporting scientific notation.|123| |`<jsonpath starting with $>`|Value referred to by the JSONPath from the input document root node; only definite paths are supported.|$.object.name| |`<jsonpath starting with @>`|Value referred to by the JSONPath from the current object/element; only definite paths are supported.|@.name|  Supported operators:  |Operator|Type|Description|Result| |--|--------|----|----| |`-`|binary|Subtraction.|Number.| |`+`|binary|Addition.|Number.| |`/`|binary|Division.|Number.| |`*`|binary|Multiplication.|Number.| |`==`|binary|Is equal to.|Boolean (1 or 0).| |`!=`|binary|Is not equal to.|Boolean (1 or 0).| |`<`|binary|Is less than.|Boolean (1 or 0).| |`<=`|binary|Is less than or equal to.|Boolean (1 or 0).| |`>`|binary|Is greater than.|Boolean (1 or 0).| |`>=`|binary|Is greater than or equal to.|Boolean (1 or 0).| |`=~`|binary|Matches regular expression.|Boolean (1 or 0).| |`!`|unary|Boolean not.|Boolean (1 or 0).| |`||`|binary|Boolean or.|Boolean (1 or 0).| |`&&`|binary|Boolean and.|Boolean (1 or 0).|
ru	#### Выражение фильтра  Выражение фильтра является арифметическим выражением в инфиксном представлении.  Поддерживаемые операнды:  |Операнд|Описание|Пример| |--|------|------| |`"<текст>"`<br>`'<text>'`|Текстовая константа.|'value: \\'1\\''<br>"value: '1'"| |`<число>`|Числовая константа, поддерживая научное представление.|123| |`<jsonpath начиная с $>`|Значение, указанное в JSONPath, начиная с корневого узла входного документа; поддерживаются только определённые пути.|$.object.name| |`<jsonpath начиная с @>`|Значение, указанное в JSONPath, начиная с текущего объекта / элемента; поддерживаются только определенные пути.|@.name|  Поддерживаемые операторы:  |Оператор|Тип|Описание|Результат| |--|--------|----|----| |`-`|бинарный|Вычитание.|Число.| |`+`|бинарный|Сложение.|Число.| |`/`|бинарный|Деление.|Число.| |`*`|бинарный|Умножение.|Число.| |`==`|бинарный|Равно.|Логический (1 или 0).| |`!=`|бинарный|Не равно.|Логический (1 или 0).| |`<`|бинарный|Меньше чем.|Логический (1 или 0).| |`<=`|бинарный|Меньше чем или равно.|Логический (1 или 0).| |`>`|бинарный|Больше чем.|Логический (1 или 0).| |`>=`|бинарный|Больше чем или равно.|Логический (1 или 0).| |`=~`|бинарный|Соответствие регулярному выражению.|Логический (1 или 0).| |`!`|унарный|Логическое НЕ.|Логический (1 или 0).| |`\|\|`|бинарный|Логическое ИЛИ.|Логический (1 или 0).| |`&&`|бинарный|Логическое И.|Логический (1 или 0).|

en-us	##### Filtering by host  In the *by host* mode results can be filtered by a host or by the host group. Specifying a parent host group implicitly selects all nested host groups.
ru	##### Фильтрация по узлу сети  В режиме *по узлу сети (by host)* результаты могут быть отфильтрованы по узлу сети или по группе узлов сети. При указании родительской группы узлов сети неявно выбираются все вложенные группы.

en-us	##### Filtering by trigger template  In the *by trigger template* mode results can be filtered by one or several parameters listed below.  |Parameter|Description| |--|--------| |*Template group*|Select all hosts with triggers from templates belonging to that group. Any host group that includes at least one template can be selected.| |*Template*|Select hosts with triggers from the chosen template and all nested templates. Only triggers inherited from the selected template will be displayed. If a nested template has additional own triggers, those triggers will not be displayed.| |*Template trigger*|Select hosts with chosen trigger. Other triggers of the selected hosts will not be displayed.| |*Host group*|Select hosts belonging to the group.|
ru	##### Фильтрация по шаблону триггера  В режиме *по шаблону триггера (by trigger template)* результаты могут быть отфильтрованы по одному или нескольким параметрам, перечисленным ниже.  |Параметр|Описание| |--|--------| |*Группа шаблона*<br>*(Template group)*|Выбрать все узлы сети с триггерами из шаблонов, относящихся к этой групе. Может быть выбрана любая группа узлов сети, включающая хотя бы один шаблон.| |*Шаблон*<br>*(Template)*|Выбрать узлы сети с триггерами из выбранного шаблона и всех вложенных шаблонов. Будут отображаться только триггеры, унаследованные из выбранного шаблона. Если вложенный шаблон имеет свои дополнительные триггеры, эти триггеры отображаться не будут.| |*Шаблонный триггер*<br>*(Template trigger)*|Выбрать узлы сети с данным триггером. Остальные триггеры выбранных узлов сети отображаться не будут.| |*Группа узлов сети*<br>*(Host group)*|Выбрать узлы сети, относящиеся к данной группе.|

en-us	#### Filtering VMware event log records  Using a regular expression preprocessing to filter unnecessary events of the VMware event log.  1\. On a working VMware Hypervisor host check that the event log item `vmware.eventlog[<url>,<mode>]` is present and working properly. Note that the event log item could already be present on the hypervisor if the *Template VM VMware* template has been linked during the host creation.  2\. On the VMware Hypervisor host create a [dependent item](/manual/config/items/itemtypes/dependent_items) of 'Log' type and set the event log item as its master.  In the "Preprocessing" tab of the dependent item select the "Matches regular expression" validation option and fill pattern, for example:      ".* logged in .*" - filters all logging events in the event log     "\bUser\s+\K\S+" -  filter only lines with usernames from the event log  ::: noteimportant If the regular expression is not matched then the dependent item becomes unsupported with a corresponding error message. To avoid this mark the "Custom on fail" checkbox and select to discard unmatched value, for example. :::  Another approach that allows using matching groups and output control is to select "Regular expression" option in the "Preprocessing" tab and fill parameters, for example:      pattern: ".*logged in.*", output: "\0" - filters all logging events in the event log     pattern "User (.*?)(?=\ )", output: "\1" - filter only usernames from the event log
ru	#### Фильтрация записей журнала событий VMware  Использование предварительной обработки с помощью регулярного выражения для фильтрации ненужных событий из журнала VMware.  1\. Убедитесь, что на работающем узле сети гипервизора VMware присутствует элемент данных журнала событий `vmware.eventlog [<url>, <режим>]` и работает должным образом. Обратите внимание, что элемент данных журнала событий уже может присутствовать у гипервизора, если при создании узла сети был присоединён шаблон *Template VM VMware*.  2\. На узле сети гипервизора VMware создайте [зависимый элемент данных](/manual/config/items/itemtypes/dependent_items) с типом 'Журнал (лог)' и выберите элемент данных журнала событий основным элементом данных.  На вкладке "Предобработка" зависимого элемента данных выберите опцию валидации "Совпадение регулярному выражению" и заполните шаблон, например:      ".* logged in .*" - фильтрация из журнала событий всех событий входа в систему     "\bUser\s+\K\S+" -  фильтрация из журнала событий только строк с именами пользователей  ::: noteimportant Если регулярное выражение не совпадает, то зависимый элемент станет неподдерживаемым с соответствующим сообщением об ошибке. Чтобы избежать этого, отметьте опцию "Другое при ошибке" и, например, выберите отбросить значение для несовпадающего значения. :::  Другой подход, позволяющий использовать группы совпадения и управление выводом, состоит в том, что нужно выбрать "Регулярное выражение" на вкладке "Предобработка" и заполнить параметры, например:      шаблон: ".*logged in.*", вывод: "\0" - фильтрация из журнала событий всех событий входа в систему     шаблон: "User (.*?)(?=\ )", вывод: "\1" - фильтрация из журнала событий только имен пользователей

en-us	 #### Filter settings remembered  In several Monitoring pages (*Problems*, *Hosts*, *Latest data*) the current filter settings are  now remembered in the user profile. When the user opens the page again, the filter settings  will have stayed the same.  Additionally, the marking of a changed (but not saved) favorite filter is now a green dot next  to the filter name, instead of the filter name in italics.
ru	#### Сохраняемые настройки фильтров  На нескольких страницах Мониторинга  (*Проблемы*, *Узлы сети*, *Последние данные*) текущие настройки фильтров теперь сохраняются в профиле пользователя. Когда пользователь снова откроет страницу, настройки фильтра останутся теми же.  Кроме того, измененный (но не сохраненный) избранный фильтр теперь помечается зеленой точкой после именем фильтра, а не отображением имени фильтра курсивом.

en-us	#### Find HTTP agent item  Find HTTP agent item with post body type XML for specific host ID.  Request:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "hostids": "10255",         "filter": {             "type": 19,             "post_type": 3         }     },     "id": 3,     "auth": "d678e0b85688ce578ff061bd29a20d3b" } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "28252",             "type": "19",             "snmp_oid": "",             "hostid": "10255",             "name": "template item",             "key_": "ti",             "delay": "30s",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "localhost",             "query_fields": [                 {                     "mode": "xml"                 }             ],             "posts": "<body>\r\n<![CDATA[{$MACRO}<foo></bar>]]>\r\n</body>",             "status_codes": "200",             "follow_redirects": "0",             "post_type": "3",             "http_proxy": "",             "headers": [],             "retrieve_mode": "1",             "request_method": "3",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "",             "prevvalue": ""         }     ],     "id": 3 } ```
ru	#### Поиск элемента данных HTTP-агента  Найти элемент данных HTTP-агента с типом XML тела POST запроса для определенного идентификатора узла сети.  Запрос:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "hostids": "10255",         "filter": {             "type": 19,             "post_type": 3         }     },     "id": 3,     "auth": "d678e0b85688ce578ff061bd29a20d3b" } ```  Ответ:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "28252",             "type": "19",             "snmp_oid": "",             "hostid": "10255",             "name": "template item",             "key_": "ti",             "delay": "30s",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "localhost",             "query_fields": [                 {                     "mode": "xml"                 }             ],             "posts": "<body>\r\n<![CDATA[{$MACRO}<foo></bar>]]>\r\n</body>",             "status_codes": "200",             "follow_redirects": "0",             "post_type": "3",             "http_proxy": "",             "headers": [],             "retrieve_mode": "1",             "request_method": "3",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "",             "prevvalue": ""         }     ],     "id": 3 } ```

en-us	#### Find HTTP agent item prototype  Find HTTP agent item prototype with request method HEAD for specific host ID.  Request:  ```json {     "jsonrpc": "2.0",     "method": "itemprototype.get",     "params": {         "hostids": "10254",         "filter": {             "type": "19",             "request_method": "3"         }     },     "id": 17,     "auth": "d678e0b85688ce578ff061bd29a20d3b" } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "28257",             "type": "19",             "snmp_oid": "",             "hostid": "10254",             "name": "discovered",             "key_": "item[{#INAME}]",             "delay": "{#IUPDATE}",             "history": "90d",             "trends": "30d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "28255",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "interfaceid": "2",             "description": "",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "{#IURL}",             "query_fields": [],             "posts": "",             "status_codes": "",             "follow_redirects": "0",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "3",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "discover": "0",             "uuid": "",             "parameters": []         }     ],     "id": 17 } ```
ru	#### Поиск прототипа элемента данных HTTP-агента  Найти прототип элемента данных HTTP-агента с методом запроса HEAD для определенного идентификатора узла сети.  Запрос:  ```json {     "jsonrpc": "2.0",     "method": "itemprototype.get",     "params": {         "hostids": "10254",         "filter": {             "type": "19",             "request_method": "3"         }     },     "id": 17,     "auth": "d678e0b85688ce578ff061bd29a20d3b" } ```  Ответ:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "28257",             "type": "19",             "snmp_oid": "",             "hostid": "10254",             "name": "discovered",             "key_": "item[{#INAME}]",             "delay": "{#IUPDATE}",             "history": "90d",             "trends": "30d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "28255",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "interfaceid": "2",             "description": "",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "{#IURL}",             "query_fields": [],             "posts": "",             "status_codes": "",             "follow_redirects": "0",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "3",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "discover": "0",             "uuid": "",             "parameters": []         }     ],     "id": 17 } ```

en-us	#### Finding dependent item  Find one Dependent item for item with ID "25545".  Request:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "filter": {             "type": "18",             "master_itemid": "25545"         },         "limit": "1"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "25547",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Seconds",             "key_": "apache.status.uptime.seconds",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "interfaceid": "0",             "description": "",             "evaltype": "0",             "master_itemid": "25545",             "jmx_endpoint": "",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "discover": "0",             "uuid": "",             "parameters": []         }     ],     "id": 1 } ```
ru	#### Поиск зависимого элемента данных  Найти один зависимый элемент данных для элемента данных с идентификатором "25545".  Запрос:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "filter": {             "type": "18",             "master_itemid": "25545"         },         "limit": "1"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Ответ:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "25547",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Seconds",             "key_": "apache.status.uptime.seconds",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "interfaceid": "0",             "description": "",             "evaltype": "0",             "master_itemid": "25545",             "jmx_endpoint": "",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "discover": "0",             "uuid": "",             "parameters": []         }     ],     "id": 1 } ```

en-us	#### Finding dependent items by key  Retrieve all dependent items from host with ID "10116" that have the word "apache" in the key.  Request:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "hostids": "10116",         "search": {             "key_": "apache"         },         "filter": {             "type": 18         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "25550",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Days",             "key_": "apache.status.uptime.days",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "25545",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "25555",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Hours",             "key_": "apache.status.uptime.hours",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "25545",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         }     ],     "id": 1 } ```
ru	#### Поиск зависимых элементов данных по ключу  Получить все зависимые элементы данных для узла сети с идентификатором "10116", в ключе которых есть слово "apache".  Запрос:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "hostids": "10116",         "search": {             "key_": "apache"         },         "filter": {             "type": 18         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Ответ:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "25550",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Days",             "key_": "apache.status.uptime.days",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "25545",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "25555",             "type": "18",             "snmp_oid": "",             "hostid": "10116",             "name": "Hours",             "key_": "apache.status.uptime.hours",             "delay": "0",             "history": "90d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "0",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "25545",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         }     ],     "id": 1 } ```

en-us	#### Finding items by key  Retrieve all items used in triggers specific host ID that have word "system.cpu" in the item key and sort results by name.  Request:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "hostids": "10084",         "with_triggers": true,         "search": {             "key_": "system.cpu"         },         "sortfield": "name"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "42269",             "type": "18",             "snmp_oid": "",             "hostid": "10084",             "name": "CPU utilization",             "key_": "system.cpu.util",             "delay": "0",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "%",             "logtimefmt": "",             "templateid": "42267",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "CPU utilization in %.",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "42264",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42259",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (15m avg)",             "key_": "system.cpu.load[all,avg15]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42219",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42249",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (1m avg)",             "key_": "system.cpu.load[all,avg1]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42209",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42257",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (5m avg)",             "key_": "system.cpu.load[all,avg5]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42217",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42260",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Number of CPUs",             "key_": "system.cpu.num",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42220",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         }     ],     "id": 1 } ```
ru	#### Поиск элементов данных по ключу  Получить все элементы, используемые в узле сети с определенным ID, которые содержат слово "system.cpu" в ключе элемента данных, и отсортировать результаты по имени.  Запрос:  ```json {     "jsonrpc": "2.0",     "method": "item.get",     "params": {         "output": "extend",         "hostids": "10084",         "with_triggers": true,         "search": {             "key_": "system.cpu"         },         "sortfield": "name"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Ответ:  ```json {     "jsonrpc": "2.0",     "result": [         {             "itemid": "42269",             "type": "18",             "snmp_oid": "",             "hostid": "10084",             "name": "CPU utilization",             "key_": "system.cpu.util",             "delay": "0",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "%",             "logtimefmt": "",             "templateid": "42267",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "0",             "description": "CPU utilization in %.",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "42264",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42259",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (15m avg)",             "key_": "system.cpu.load[all,avg15]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42219",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42249",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (1m avg)",             "key_": "system.cpu.load[all,avg1]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42209",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42257",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Load average (5m avg)",             "key_": "system.cpu.load[all,avg5]",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "0",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42217",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         },         {             "itemid": "42260",             "type": "0",             "snmp_oid": "",             "hostid": "10084",             "name": "Number of CPUs",             "key_": "system.cpu.num",             "delay": "1m",             "history": "7d",             "trends": "365d",             "status": "0",             "value_type": "3",             "trapper_hosts": "",             "units": "",             "logtimefmt": "",             "templateid": "42220",             "valuemapid": "0",             "params": "",             "ipmi_sensor": "",             "authtype": "0",             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "flags": "0",             "interfaceid": "1",             "description": "",             "inventory_link": "0",             "evaltype": "0",             "jmx_endpoint": "",             "master_itemid": "0",             "timeout": "3s",             "url": "",             "query_fields": [],             "posts": "",             "status_codes": "200",             "follow_redirects": "1",             "post_type": "0",             "http_proxy": "",             "headers": [],             "retrieve_mode": "0",             "request_method": "0",             "output_format": "0",             "ssl_cert_file": "",             "ssl_key_file": "",             "ssl_key_password": "",             "verify_peer": "0",             "verify_host": "0",             "allow_traps": "0",             "uuid": "",             "state": "0",             "error": "",             "parameters": [],             "lastclock": "0",             "lastns": "0",             "lastvalue": "0",             "prevvalue": "0"         }     ],     "id": 1 } ```

en-us	#### - Firewall  By default, only the ports listed in the [configuration changes](#firewall_configuration) above are open. To open additional ports, modify "*/etc/sysconfig/iptables*" file and reload firewall rules:      systemctl reload iptables
ru	#### - Брандмауэр  По умолчанию, для подключений открыты только адреса портов, перечисленные в [изменениях конфигурации](#конфигурация-брандмауэра) выше. Чтобы открыть дополнительные порты, отредактируйте файл "*/etc/sysconfig/iptables*" и перезагрузите правила брандмауэра:      systemctl reload iptables

en-us	##### - Firewall configuration  The appliance uses iptables firewall with predefined rules:  -   Opened SSH port (22 TCP); -   Opened Zabbix agent (10050 TCP) and Zabbix trapper (10051 TCP)     ports; -   Opened HTTP (80 TCP) and HTTPS (443 TCP) ports; -   Opened SNMP trap port (162 UDP); -   Opened outgoing connections to NTP port (53 UDP); -   ICMP packets limited to 5 packets per second; -   All other incoming connections are dropped.
ru	##### - Конфигурация брандмауэра  Готовое решение использует брандмауэр iptables с предустановленными правилами:  -   Открыт порт SSH (22 TCP); -   Открыты порты Zabbix агента (10050 TCP) и Zabbix траппера (10051 TCP); -   Открыты порты HTTP (80 TCP) и HTTPS (443 TCP); -   Открыт порт SNMP трапов (162 UDP) -   Открыты исходящие подключения на порт NTP (53 UDP); -   ICMP пакеты ограничены 5 пакетами в секунду; -   Все остальные входящие подключения отбрасываются.

en-us	##### - Fit functions  Default `fit` is the *linear* function. But if your monitored system is more complicated you have more options to choose from.  |`fit`|x = f(t)| |-----|--------| |*linear*|x = a + b\*t| |*polynomialN*[^2]|x = a~0~ + a~1~\*t + a~2~\*t^2^ + ... + a~n~\*t^n^| |*exponential*|x = a\*exp(b\*t)| |*logarithmic*|x = a + b\*log(t)| |*power*|x = a\*t^b^|
ru	##### - Функции аппроксимации  По умолчанию `аппроксимация` является линейной (*linear*) функцией. Если наблюдаемая система более сложная, вы можете выбрать один из следующих вариантов.  |`аппроксимация`|x = f(t)| |-----|--------| |линейная (*linear*)|x = a + b\*t| |полиномиальная (*polynomialN*)[^2]|x = a~0~ + a~1~\*t + a~2~\*t^2^ + ... + a~n~\*t^n^| |экспоненциальная (*exponential*)|x = a\*exp(b\*t)| |логарифмическая (*logarithmic*)|x = a + b\*log(t)| |степенная (*power*)|x = a\*t^b^|

en-us	#### Flexible intervals  Flexible intervals allow to redefine the default update interval for specific time periods. A flexible interval is defined with *Interval* and *Period* where:  -   *Interval* – the update interval for the specified time period -   *Period* – the time period when the flexible interval is active (see     the [time periods](/manual/appendix/time_period) for detailed     description of the *Period* format)  If multiple flexible intervals overlap, the smallest *Interval* value is used for the overlapping period. Note that if the smallest value of overlapping flexible intervals is '0', no polling will take place. Outside the flexible intervals the default update interval is used.  Note that if the flexible interval equals the length of the period, the item will be checked exactly once. If the flexible interval is greater than the period, the item might be checked once or it might not be checked at all (thus such configuration is not advisable). If the flexible interval is less than the period, the item will be checked at least once.  If the flexible interval is set to '0', the item is not polled during the flexible interval period and resumes polling according to the default *Update interval* once the period is over. Examples:  |Interval|Period|Description| |--|--|------| |10|1-5,09:00-18:00|Item will be checked every 10 seconds during working hours.| |0|1-7,00:00-7:00|Item will not be checked during the night.| |0|7-7,00:00-24:00|Item will not be checked on Sundays.| |60|1-7,12:00-12:01|Item will be checked at 12:00 every day. Note that this was used as a workaround for scheduled checks and starting with Zabbix 3.0 it is recommended to use scheduling intervals for such checks.|
ru	#### Переменные интервалы  Переменные интервалы позволяют переопределить интервал обновления по умолчанию в течение указанных периодов. Переменный интервал задаётся с помощью параметров *Интервал* и *Период*, где:  -   *Интервал* — интервал обновления в указанный период времени -   *Период* — период времени, когда гибкий интервал активен (смотрите [периоды времени](/manual/appendix/time_period) для подробного описания формата *Период*)  Если несколько переменных интервалов перекрываются, то используется *Интервал* с наименьшим значением для перекрывающегося периода. Обратите внимание, что если наименьший интервал из перекрывающихся имеет значение «0», то проверка не будет производиться вообще. Вне времени переменных интервалов будет использоваться интервал обновления по умолчанию.  Обратите внимание что, если переменный интервал совпадает с длительностью периода, элемент данных будет опрошен ровно один раз. Если переменный интервал больше, чем период, элемент данных может быть опрошен один раз или может быть не проверен вовсе (поэтому такая настройка не рекомендуется). Если гибкий интервал меньше, чем период, элемент данных будет опрошен по крайней мере один раз.  Если переменный интервал задан равным «0», то элемент данных не будет обрабатываться в течение периода переменного интервала и опрос возобновится в соответствии с *Интервал обновления* по умолчанию сразу, как только период завершится. Примеры:  |Интервал|Период|Описание| |--|--|------| |10|1-5,09:00-18:00|Элемент данных будет опрашиваться каждые 10 секунд в течение рабочего времени.| |0|1-7,00:00-7:00|Элемент данных не будет опрашиваться в течение ночи.| |0|7-7,00:00-24:00|Элемент данных не будет опрашиваться по воскресеньям.| |60|1-7,12:00-12:01|Элемент данных будет опрошен ровно в 12:00 каждый день. Обратите внимание, что такой формат использовался как обходной путь при опросе по расписанию, а начиная с Zabbix 3.0, рекомендуется для таких проверок использовать интервалы по расписанию.|

en-us	#### Flexible user parameters  Flexible user parameters accept parameters with the key. This way a flexible user parameter can be the basis for creating several items.  Flexible user parameters have the following syntax:      UserParameter=key[*],command  |Parameter|Description| |--|--------| |**Key**|Unique item key. The \[\*\] defines that this key accepts parameters within the brackets.<br>Parameters are given when configuring the item.| |**Command**|Command to be executed to evaluate value of the key.<br>*For flexible user parameters only*:<br>You may use positional references $1…$9 in the command to refer to the respective parameter in the item key.<br>Zabbix parses the parameters enclosed in \[ \] of the item key and substitutes $1,...,$9 in the command accordingly.<br>$0 will be substituted by the original command (prior to expansion of $0,...,$9) to be run.<br>Positional references are interpreted regardless of whether they are enclosed between double (") or single (') quotes.<br>To use positional references unaltered, specify a double dollar sign - for example, awk '{print $$2}'. In this case `$$2` will actually turn into `$2` when executing the command.|  ::: noteimportant Positional references with the $ sign are searched for and replaced by Zabbix agent only for flexible user parameters. For simple user parameters, such reference processing is skipped and, therefore, any $ sign quoting is not necessary. :::  ::: noteimportant Certain symbols are not allowed in user parameters by default. See [UnsafeUserParameters](/manual/appendix/config/zabbix_agentd) documentation for a full list. :::
ru	#### Гибкие пользовательские параметры  Гибкие пользовательские параметры допускают параметры с указанным ключом. В этом случае гибкие пользовательские параметры могут быть основой для создания нескольких элементов данных.  Гибкие пользовательские параметры имеют следующий синтаксис:      UserParameter=ключ[*],команда  |Параметр|Описание| |--|--------| |**Ключ**|Уникальный ключ элемента данных. \[\*\] задаёт, что ключ может принимать параметры из скобок. Параметры указываются при настройке элемента данных.| |**Команда**|Команда, которая выполняется для получения значения ключа.<br>*Только для гибких пользовательских параметров*:<br>Вы можете использовать в команде позиционные ссылки $1…$9 для того, чтобы сослаться на соответствующий параметр в ключе элемента данных.<br>Zabbix разбирает параметры, заключенные в \[ \] ключа элемента данных, и заменяет $1,…,$9 в команде соответственно.<br>$0 будет заменена оригинальной командой (до раскрытия $0,…,$9) для выполнения.<br>Позиционные ссылки интерпретируются Zabbix агентом независимо от того, заключены ли они в двойные (") или в одинарные (') кавычки.<br>Для использования позиционных ссылок без изменения, укажите двойной символ доллара - например, awk '{print $$2}'. В этом случае `$$2` фактически превратится в `$2` при выполнении команды.|  ::: noteimportant Позиционные ссылки, начинающиеся со знака $, ищутся и заменяются Zabbix агентом только в случае гибких пользовательских параметров. В случае простых пользовательских параметров такая обработка ссылок пропускается и, следовательно, экранирование любых знаков $ не требуется. :::  ::: noteimportant По умолчанию некоторые символы не разрешены в пользовательских параметрах. Смотрите документацию по [UnsafeUserParameters](/manual/appendix/config/zabbix_agentd) для получения полного списка таких символов. :::

en-us	#### Flipping frontend locales  It has been observed that frontend locales may flip without apparent logic, i. e. some pages (or parts of pages) are displayed in one language while other pages (or parts of pages) in a different language. Typically the problem may appear when there are several users, some of whom use one locale, while others use another.  A known workaround to this is to disable multithreading in PHP and Apache.  The problem is related to how setting the locale works [in PHP](https://www.php.net/manual/en/function.setlocale): locale information is maintained per process, not per thread. So in a multi-thread environment, when there are several projects run by same Apache process, it is possible that the locale gets changed in another thread and that changes how data can be processed in the Zabbix thread.  For more information, please see related problem reports:  -   [ZBX-10911](https://support.zabbix.com/browse/ZBX-10911) (Problem     with flipping frontend locales) -   [ZBX-16297](https://support.zabbix.com/browse/ZBX-16297) (Problem     with number processing in graphs using the `bcdiv` function of BC     Math functions)
ru	#### Переключение локалей в веб-интерфейсе  Было замечено, что локали в веб-интерфейсе могут переключаться без какой-либо явной логики, то есть некоторые страницы (или части страниц) отображаются на одном языке, тогда как другие страницы (или части страниц) — на другом. Обычно такая проблема может возникнуть, когда имеется несколько пользователей, некоторые из которых используют одну локаль, в то время как другие используют другую локаль.  Известный вариант решения такой проблемы — отключение многопоточности в PHP и Apache.  Эта проблема связана с тем, как локали работают [в PHP](https://www.php.net/manual/en/function.setlocale): информация о локали сохраняется по каждому процессу, а не по потоку. Поэтому в многопоточной среде, где несколько проектов выполняются одним и тем же процессом Apache, имеется вероятность, что локаль меняется в другом потоке, что меняет способ обработки данных в потоке Zabbix.  Для получения более подробной информации смотрите соответствующие отчёты о проблеме:  -   [ZBX-10911](https://support.zabbix.com/browse/ZBX-10911) (Проблема с переключением локалей в веб-интерфейсе) -   [ZBX-16297](https://support.zabbix.com/browse/ZBX-16297) (Проблема с обработкой чисел в графиках с использованием функции `bcdiv` из функций BC Math)

en-us	### Float history  The float history object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |clock|timestamp|Time when that value was received.| |itemid|string|ID of the related item.| |ns|integer|Nanoseconds when the value was received.| |value|float|Received value.|
ru	### История дробных чисел  Объект истории дробных чисел имеет следующие свойства.  |Параметр|Тип(/manual/api/reference_commentary#data_types)|Описание| |--|--|------| |clock|timestamp|Время, когда было получено значение.| |itemid|string|ID соответствующего элемента данных.| |ns|integer|Наносекунды, когда было получено значение.| |value|float|Полученное значение.|

en-us	##### Footnotes  ^**1**^A Linux-specific note. Zabbix agent must have read-only access to filesystem */proc*. Kernel patches from www.grsecurity.org limit access rights of non-privileged users.  ^**2**^ `vfs.dev.read[]`, `vfs.dev.write[]`: Zabbix agent will terminate "stale" device connections if the item values are not accessed for more than 3 hours. This may happen if a system has devices with dynamically changing paths or if a device gets manually removed. Note also that these items, if using an update interval of 3 hours or more, will always return '0'.  ^**3**^ `vfs.dev.read[]`, `vfs.dev.write[]`: If default *all* is used for the first parameter then the key will return summary statistics, including all block devices like sda, sbd and their partitions (sda1, sda2, sdb3...) and multiple devices (MD raid) based on those block devices/partitions and logical volumes (LVM) based on those block devices/partitions. In such cases returned values should be considered only as relative value (dynamic in time) but not as absolute values.  ^**4**^ SSL (HTTPS) is supported only if agent is compiled with cURL support. Otherwise the item will turn unsupported.
ru	##### Примечания  ^**1**^ Специфичное для Linux примечание. Zabbix агент должен иметь права "только на чтение" на файловую систему */proc*. Патчи к ядру от www.grsecurity.org ограничивают права доступа непривилегированных пользователей.  ^**2**^ `vfs.dev.read[]`, `vfs.dev.write[]`: Zabbix агент будет прерывать "протухшие" подключения к устройствам, если значения элементов данных не опрашиваются более 3 часов. Это может произойти, если система имеет устройства с динамически меняющимися путями или если устройство было удалено вручную. Обратите также внимание, что эти элементы данных при использовании интервала обновления от 3 часов и более всегда будут возвращать значение '0'.  ^**3**^ `vfs.dev.read[]`, `vfs.dev.write[]`: Если первым параметром используется параметр по умолчанию *all*, тогда ключ вернет суммарную статистику, включая все блочные устройства, такие как sda, sdb и их разделы (sda1, sda2, sdb3…) и несколько устройств (MD raid) на основе этих блочных устройств/разделов и логические разделы (LVM) на основе этих блочных устройств/разделов. В этих случаях возвращаемые значения следует рассматривать как относительные значения (изменяемые во времени), но не как абсолютные значения.  ^**4**^ SSL (HTTPS) поддерживается только, если агент скомпилирован с поддержкой cURL. В противном случае элемент данных станет неподдерживаемым.

en-us	##### Footnotes  ^**1**^ Default value.
ru	##### Примечания  ^**1**^ Значение по умолчанию.

en-us	##### Footnotes  ^**1**^ For string values, only the string will be exported (e.g. "EMAIL") without the numbering used in this table. The numbers for range values (corresponding to the API values) in this table is used for ordering only.
ru	##### Примечания  ^**1**^ Для строковых значений экспортируется только строка (например, "EMAIL") без использования нумерации из таблицы. Числовые значения диапазонов (соответствующие значениям API) в этой таблице используются только для сортировки.

en-us	##### Footnotes  ^**1**^ For string values, only the string will be exported (e.g. "ZABBIX\_ACTIVE") without the numbering used in this table. The numbers for range values (corresponding to the API values) in this table is used for ordering only.
ru	##### Примечания  ^**1**^ Для строковых значений экспортируется только строка (например, "ZABBIX\_ACTIVE") без использования нумерации из таблицы. Числовые значения диапазонов (соответствующие значениям API) в этой таблице используются только для сортировки.

en-us	##### Footnotes  ^**1**^ For string values, only the string will be exported (e.g. "ZABBIX\_ACTIVE") without the numbering used in this table. The numbers for range values (corresponding to the API values) in this table is used for ordering only.
ru	##### Примечания  ^**1**^ Для строковых значений экспортируется только строка (например, "ZABBIX\_ACTIVE") без использования нумерации из таблицы. Числовые диапазоны значений (соответствующие значениям API) в этой таблице используются только для сортировки.

en-us	##### Footnotes  ^**1**^ If multiple macros in a field or macros mixed with text are not supported for the location, a single macro has to fill the whole field.  ^**2**^ Macros used in tag names and values are resolved only during event generation process.  ^**3**^ URLs that contain a [secret macro](/manual/config/macros/user_macros#configuration) will not work, as the macro in them will be resolved as "\*\*\*\*\*\*".
ru	##### Примечания  ^**1**^ Если несколько макросов в поле или макросы вперемешку с текстом не поддерживаются для данного места, то один макрос должен заполнять целиком всё поле.  ^**2**^ Макросы, которые используются в именах и значениях тегов, раскрываются только во время процесса генерации событий.  ^**3**^ URL-ы, которые содержат [секретные макросы](/manual/config/macros/user_macros#настройка), работать не будут, поскольку макросы в них будут раскрыты как «\*\*\*\*\*\*».

en-us	##### Footnotes  ^**1**^ In the fields marked with ^[1](lld_macros#footnotes)^ a single macro has to fill the whole field. Multiple macros in a field or macros mixed with text are not supported.
ru	##### Примечания  ^**1**^ В полях, отмеченных ^[1](lld_macros#примечания)^, один макрос должен заполнять целое поле. Несколько макросов в одном поле или макросы, смешанные с текстом, не поддерживаются.

en-us	##### Footnotes  ^**1**^ net.if.in, net.if.out and net.if.total items do not provide statistics of loopback interfaces (e.g. lo0).  ^**2**^ These values for these items are not supported for loopback interfaces on Solaris systems up to and including Solaris 10 6/06 as byte, error and utilization statistics are not stored and/or reported by the kernel. However, if you're monitoring a Solaris system via net-snmp, values may be returned as net-snmp carries legacy code from the cmu-snmp dated as old as 1997 that, upon failing to read byte values from the interface statistics returns the packet counter (which does exist on loopback interfaces) multiplied by an arbitrary value of 308. This makes the assumption that the average length of a packet is 308 octets, which is a very rough estimation as the MTU limit on Solaris systems for loopback interfaces is 8892 bytes.  These values should not be assumed to be correct or even closely accurate. They are guesstimates. The Zabbix agent does not do any guess work, but net-snmp will return a value for these fields.  ^**3**^ The command line on Solaris, obtained from /proc/pid/psinfo, is limited to 80 bytes and contains the command line as it was when the process was started.  ^**4**^ Not supported on Windows Event Log.  ^**5**^ On Windows XP vfs.file.time\[file,[change]{.underline}\] may be equal to vfs.file.time\[file,[access]{.underline}\].  ^**6**^ Supported only by Zabbix agent 2; not supported by Zabbix agent.  ^**7**^ Supported only by Zabbix agent 2 on 64-bit Windows; not supported by Zabbix agent.
ru	##### Примечания  ^**1**^ Элементы данных net.if.in, net.if.out и net.if.total не предоставляют статистику по loopback интерфейсам (например, lo0).  ^**2**^ Значения перечисленных элементов данных не поддерживаются для loopback интерфейсов на Solaris вплоть до Solaris 10 6/06 включительно, поскольку статистика байт, утилизации и ошибок не хранится и/или не отдаётся ядром. Однако, если вы мониторите систему через net-snmp, значения можно получить благодаря старому коду net-snmp от cmu-snmp, датированному 1997 годом, после ошибки чтения значений байтов из статистики  интерфейса возвращается счётчик пакетов (который  существует на loopback интерфейсе), умноженный на произвольное значение 308. Это дает предположение, что средний размер пакета 308 октетов, которое является очень грубым приближением, поскольку ограничение MTU на системах Solaris для loopback интерфейсов составляет 8892 байта.  Эти значения не должны рассматриваться, как корректные и даже близкие к точным. Они предположительные. Zabbix агент не пытается выполнить работу по отгадыванию, однако net-snmp возвращает значения этих полей.  ^**3**^ Командная строка на Solaris, получаемая с /proc/pid/psinfo, ограничена 80 байтами и содержит командную строку, которая была на момент запуска процесса.  ^**4**^ Не поддеживается для Windows Event Log.  ^**5**^ На Windows XP vfs.file.time\[файл,[change]{.underline}\] может быть равным vfs.file.time\[файл,[access]{.underline}\].  ^**6**^ Поддерживается только Zabbix агентом 2; не поддерживается Zabbix агентом.  ^**7**^ Поддерживается только Zabbix агентом 2 на 64-ных Windows; не поддерживается Zabbix агентом.

en-us	##### Footnotes  ^**1**^ Note that too many data gathering processes (pollers, unreachable pollers, ODBC pollers, HTTP pollers, Java pollers, pingers, trappers, proxypollers) together with IPMI manager, SNMP trapper and preprocessing workers can **exhaust** the per-process file descriptor limit for the preprocessing manager.  ::: notewarning This will cause Zabbix server to stop (usually shortly after the start, but sometimes it can take more time). The configuration file should be revised or the limit should be raised to avoid this situation. :::  ^**2**^ When a lot of items are deleted it increases the load to the database, because the housekeeper will need to remove all the history data that these items had. For example, if we only have to remove 1 item prototype, but this prototype is linked to 50 hosts and for every host the prototype is expanded to 100 real items, 5000 items in total have to be removed (1\*50\*100). If 500 is set for MaxHousekeeperDelete (MaxHousekeeperDelete=500), the housekeeper process will have to remove up to 2500000 values (5000\*500) for the deleted items from history and trends tables in one cycle.
ru	##### Примечания  ^**1**^ Обратите внимание, что слишком большое количество процессов сбора данных (поллеров, поллеров недоступных устройств, поллеров ODBC, поллеров HTTP, поллеров Java, пингеров, трапперов, поллеров прокси) вместе с IPMI менеджером, SNMP траппером и рабочими процессами предварительной обработки, могут **исчерпать** ограничение количества файловых дескрипторов на один процесс для менеджера предварительной обработки.  ::: notewarning Это заставит Zabbix сервер остановиться (обычно вскоре после запуска, но иногда может занять более длительное время). Чтобы избежать подобной ситуации, необходимо пересмотреть файл конфигурации или увеличить лимит. :::  ^**2**^ При удалении большого количества элементов данных возрастает нагрузка на базу данных, поскольку процессу очистки базы данных (housekeeper) потребуется удалить все данные истории, относящиеся к этим элементам данных. Для примера, если нам нужно удалить всего 1 прототип элемента данных из шаблона, но этот шаблон связан с 50 узлами сети и на каждом из них на основе этого прототипа сгенерировано по 100 реальных элементов данных, то потребуется удалить суммарно 5000 элементов данных (1\*50\*100). Если для параметра MaxHousekeeperDelete задано значение 500 (MaxHousekeeperDelete=500), то для удаляемых элементов данных процесс housekeeper должен будет за один цикл удалять из таблиц истории и динамики изменений до 2500000 значений (5000\*500).

en-us	##### Footnotes  ^**1**^ See [Creating custom performance counter names for VMware](/manual/appendix/items/perf_counters).  ^**2**^ The value of these items is obtained from VMware performance counters and the VMwarePerfFrequency [parameter](/manual/appendix/config/zabbix_server) is used to refresh their data in Zabbix VMware cache:  -   vmware.hv.datastore.read -   vmware.hv.datastore.write -   vmware.hv.network.in -   vmware.hv.network.out -   vmware.hv.perfcounter -   vmware.vm.cpu.ready -   vmware.vm.net.if.in -   vmware.vm.net.if.out -   vmware.vm.perfcounter -   vmware.vm.vfs.dev.read -   vmware.vm.vfs.dev.write
ru	##### Примечания  ^**1**^ Смотрите [Создание пользовательских имен счётчиков производительности для VMware](/manual/appendix/items/perf_counters).  ^**2**^ Значения по этим элементам данных извлекаются из счётчиков производительности VMware и [параметр](/manual/appendix/config/zabbix_server) VMwarePerfFrequency используется для обновления данных по этим элементам данных в Zabbix VMware кэше:  -   vmware.hv.datastore.read -   vmware.hv.datastore.write -   vmware.hv.network.in -   vmware.hv.network.out -   vmware.hv.perfcounter -   vmware.vm.cpu.ready -   vmware.vm.net.if.in -   vmware.vm.net.if.out -   vmware.vm.perfcounter -   vmware.vm.vfs.dev.read -   vmware.vm.vfs.dev.write

en-us	 ### Footnotes  ^**1**^ - Since Zabbix 6.0.13, loadable plugins started using the same versioning system as Zabbix itself.  As a result, MongoDB plugin version has changed from 1.2.0 to 6.0.13. 
ru	 ### Примечания  ^**1**^ - Начиная с версии Zabbix 6.0.13, подгружаемые плагины стали использовать ту же систему нумерации версий, что и сам Zabbix.  В результате версия плагина MongoDB изменилась с 1.2.0 на 6.0.13. 