[comment]: # ({ffc3ea50-ffc3ea50})
# 2. Пользовательские интервалы

[comment]: # ({/ffc3ea50-ffc3ea50})

[comment]: # ({a4706281-2c00d21c})
#### Обзор

Имеется возможность создания пользовательских правил относительно времени, когда элемент данных будет опрашиваться.
Для этого имеется два способа: *Переменные интервалы*, позволяющий переопределить интервал обновления по умолчанию, и *По расписанию*, посредством которого элемент данных может быть опрошен в конкретное время или последовательность моментов времени.

[comment]: # ({/a4706281-2c00d21c})

[comment]: # ({5c73172d-41315093})
#### Гибкие интервалы

Гибкие интервалы позволяют переопределять интервал обновления по умолчанию для определенных временных периодов.
Гибкий интервал задается с помощью *Interval* и *Period*, где:

-   *Interval* - интервал обновления для указанного временного периода.
Поддерживаются [суффиксы времени](/manual/appendix/suffixes), например: 30s, 1m, 2h, 1d.
-   *Period* - временной период, когда гибкий интервал активен (см. [временные периоды](/manual/appendix/time_period) для подробного описания формата *Period*)

Если несколько гибких интервалов перекрываются, для перекрывающегося периода используется наименьшее значение *Interval*.
Обратите внимание, что если наименьшее значение перекрывающихся гибких интервалов равно '0', опрос выполняться не будет.
Вне гибких интервалов используется интервал обновления по умолчанию.

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

Если для гибкого интервала задано значение '0', элемент данных не опрашивается в течение периода гибкого интервала и возобновляет опрос в соответствии с интервалом *Update interval* по умолчанию после завершения периода.
Примеры:

|Interval|Period|Description|
|--|--|------|
|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 каждый день. Обратите внимание, что это использовалось как обходной путь для проверок по расписанию, и для таких проверок рекомендуется использовать интервалы планирования.|

[comment]: # ({/5c73172d-41315093})

[comment]: # ({baa60ebc-128c5833})
#### Интервалы по расписанию

Интервалы по расписанию используются для опроса элементов данных в заданное время.
Тогда как переменные интервалы разрабатывались для переопределения интервала обновления элементов данных по умолчанию, интервалы по расписанию используются для обозначения независимого расписания опроса, которое выполняется параллельно.

Интервал по расписанию задается как: `md<фильтр>wd<фильтр>h<фильтр>m<фильтр>s<фильтр>` где:

-   **md** — дни месяца
-   **wd** — дни недели
-   **h** — часы
-   **m** — минуты
-   **s** — секунды

`<фильтр>` используется для того, чтобы указать значения по своему префиксу (дни, часы, минуты, секунды) и задается как: `[<от>[-<до>]][/<шаг>][,<фильтр>]` где:

-   `<от>` и `<до>` определяют диапазон соответствующих значений (включительно). Если `<до>` не указывается, тогда фильтр совпадает с диапазоном `<от> — <от>`. Если `<от>` также не указан, тогда фильтр совпадает со всеми возможными значениями.
-   `<шаг>` определяет пропуски количества значений через диапазон.
По умолчанию значение `<шаг>` равно 1, что означает, что все значения указанного диапазона совпадают.

Хотя добавление фильтра опционально, по крайней мере один фильтр должен использоваться. Фильтр должен определять либо диапазон, либо значение *<шага>*.

Пустой фильтр соответствует либо «0», если фильтр более низкого уровня не определён, либо, в противном случае, всем возможным значениям.
Например, если фильтр часа опущен, то будет соответствовать только «0» в случае, если фильтры минут и секунд также опущены; в противном случае пустой фильтр часа будет соответствовать всем значениям часа.

Допустимые значения `<от>` и `<до>` по их соответствующему префиксу фильтра:

|Префикс|Описание|*<от>*|*<до>*|
|------|-----------|--------------|------------|
|md|Дни месяца|1—31|1—31|
|wd|Дни недели|1—7|1—7|
|h|Часы|0—23|0—23|
|m|Минуты|0—59|0—59|
|s|Секунды|0—59|0—59|

Значение `<от>` должно быть меньше или равно значению `<до>`.
Значение `<шага>` должно быть больше или равно 1 и меньше или равно `<до>` - `<от>`.

К однозначным цифрам значений дней месяца, часов, минут и секунд можно добавлять префикс 0.
Например, `md01-31` и `h/02` являются допустимыми интервалами, но `md01-031` и `wd01-07` — нет.

В веб-интерфейсе Zabbix несколько интервалов по расписанию вводятся в отдельных строках.
В Zabbix API они складываются в одну строку с разделителем в виде точки с запятой (`;`).

Если время совпадает по нескольким интервалам, опрос выполнится только раз. Например, `wd1h9;h9` в понедельник в 9 утра выполнится только один раз.

Примеры:

|Интервал|Когда выполняется|
|--------|----------------|
|m0-59|каждую минуту|
|h9-17/2|каждые 2 часа, начиная с 9:00 (9:00, 11:00 ...)|
|m0,30 или m/30|каждый час в чч:00 и чч:30|
|m0,5,10,15,20,25,30,35,40,45,50,55 или m/5|каждые пять минут|
|wd1-5h9|каждый день с понедельника по Пятницу в 9:00|
|wd1-5h9-18|каждый день с понедельник по Пятницу в 9:00,10:00,...,18:00|
|h9,10,11 или h9-11|каждый день в 9:00, 10:00 и 11:00|
|md1h9m30|каждое первое число каждого месяца в 9:30|
|md1wd1h9m30|каждое первое число каждого месяца в 9:30, если этот день понедельник|
|h9m/30|каждый день в 9:00, 9:30|
|h9m0-59/30|каждый день в 9:00, 9:30|
|h9,10m/30|каждый день в 9:00, 9:30, 10:00, 10:30|
|h9-10m30|каждый день в 9:30, 10:30|
|h9m10-40/30|каждый день в 9:10, 9:40|
|h9,10m10-40/30|каждый день в 9:10, 9:40, 10:10, 10:40|
|h9-10m10-40/30|каждый день в 9:10, 9:40, 10:10, 10:40|
|h9m10-40|каждый день в 9:10, 9:11, 9:12, ... 9:40|
|h9m10-40/1|каждый день в 9:10, 9:11, 9:12, ... 9:40|
|h9-12,15|каждый день в 9:00, 10:00, 11:00, 12:00, 15:00|
|h9-12,15m0|каждый день в 9:00, 10:00, 11:00, 12:00, 15:00|
|h9-12,15m0s30|каждый день в 9:00:30, 10:00:30, 11:00:30, 12:00:30, 15:00:30|
|h9-12s30|каждый день в 9:00:30, 9:01:30, 9:02:30 ... 12:58:30, 12:59:30|
|h9m/30;h10 (*особый синтаксис API*)|каждый день в 9:00, 9:30, 10:00|
|h9m/30<br>h10 (*добавьте это отдельной строкой в веб-интерфейсе*)|каждый день в 9:00, 9:30, 10:00|

[comment]: # ({/baa60ebc-128c5833})

[comment]: # ({6806cc58-4cc438e8})
##### Выравнивание часовых поясов для прокси и агента

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

По этой причине, когда интервалы по расписанию применяются к элементам данных, которые отслеживаются через прокси, либо к активным элементам данных агента, то рекомендуется настроить часовой пояс соответствующих прокси либо агента таким же, как и на сервере Zabbix, в противном случае [очередь](/manual/config/items/queue) может неправильно сообщать о задержках элементов данных.

Часовой пояс для Zabbix прокси или агента можно настроить при помощи переменной окружения `TZ` в файле юнита `systemd`:

```default
[Service]
...
Environment="TZ=Europe/Amsterdam"
```

[comment]: # ({/6806cc58-4cc438e8})
