Тип элемента данных "Вычисляемое"
С помощью вычисляемых элементов данных можно производить расчёты на основе значений других элементов данных.
Для вычислений можно использовать:
- единичные значения отдельных элементов данных;
- сложные фильтры для выбора нескольких элементов данных для последующего объединения (подробнее об агрегированных вычислениях читайте в соответствующем разделе).
Таким образом, вычисляемые элементы позволяют создавать виртуальные источники данных. Все вычисления выполняются только на стороне сервера. Значения рассчитываются периодически на основе используемого арифметического выражения.
Информация, полученная в ходе работы, записывается в базу данных Glaber, как и любые другие данные. В базе хранятся сведения об истории и динамике изменений, а также можно строить графики.
Если результатом вычисления является число с плавающей запятой, оно будет округлено до целого числа, если тип информации вычисляемого элемента данных выбран как «Число (целое положительное)».
Синтаксис вычисляемых элементов данных аналогичен синтаксису выражений триггеров. В вычисляемых элементах данных можно сравнивать значения со строками.
На вычисляемые элементы данных можно ссылаться с помощью макросов или других подобных объектов, как и в случае с любыми другими типами элементов данных.
Также смотрите про "Агрегированные вычисления".
Параметры
Ключ — это уникальный идентификатор элемента данных в рамках одного узла сети. Вы можете дать ключу любое имя, используя доступные символы.
Формула для расчёта вводится в специальное поле. Ключ и формула не связаны между собой, параметры ключа не используются в формуле.
функция(/узел сети/ключ,<параметр1>,<параметр2>,...)
| Компонент | Описание |
|---|---|
| Функция | Одна из поддерживаемых функций: last, min, max, avg, count и т.д. |
| Узел сети | Узел сети элемента данных, который используется в вычислении. Текущий узел сети может быть опущен (примерно как в функция(//ключ,параметр,...)). |
| Ключ | Ключ элемента данных, который используется в вычислении. |
| Параметры | Параметры функции, если требуются. |
Чтобы создать более сложную формулу, можно применить комбинацию функций, знаков операций и скобок.
В выражениях триггеров доступны все функции и операторы, которые можно использовать. Их логика и приоритет не отличаются от обычных выражений.
Примеры
- Вычисление 10-минутного усреднения количества значений, обрабатываемых Glaber.
Использование функции avg:
avg(/Zabbix Server/zabbix[wcache,values],10m)
- Вычисление процентного отношения входящего трафика.
Более сложное выражение:
100*last(//net.if.in[eth0,bytes])/(last(//net.if.in[eth0,bytes])+last(//net.if.out[eth0,bytes]))