Если не оговорено иначе, то все перечисленные здесь функции поддерживаются в:
Функции агрегации могут работать с:
min(/узел_сети/ключ,1h)
min(last_foreach(/*/ключ))
(только в вычисляемых элементах данных; нельзя использовать в триггерах)Некоторые общие замечания о параметрах функций:
<
>
/узел_сети/ключ
и (сек|#число)<:сдвиг_времени>
никогда не должны заключаться в кавычки/узел_сети/ключ
является общим обязательным первым параметром для функций, ссылающихся на историю элемента данных узла сети(сек|#число)<:сдвиг_времени>
является общим вторым параметром для функций, ссылающихся на историю элемента данных узла сети, где:
ФУНКЦИЯ | ||
---|---|---|
Описание | Параметры, специфичные для функции | Комментарии |
avg (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Среднее значение элементов данных за указанный период вычислений. | Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаемы функции foreach: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach Примеры: => avg(/узел_сети/ключ,1h) → среднее значение за последний час до текущего момента => avg(/узел_сети/ключ,1h:now-1d) → среднее значение за час с 25 часов назад до 24 часов назад от текущего момента => avg(/узел_сети/ключ,#5) → среднее значение из пяти последних значений => avg(/узел_сети/ключ,#5:now-1d) → среднее значение из пяти последних значений, исключая значения, полученные за последние 24 часа Сдвиг времени полезен, когда нужно сравнить текущее среднее значение со средним значением некоторое время назад. |
bucket_percentile (фильтр,период_времени,процент) | ||
Вычисление процентиля из разрядов гистограммы. | фильтр - смотрите фильтр элементов данных период_времени - смотрите период времени процент - процент (0-100) |
Поддерживается только в вычисляемых элементах данных. Эта функция является алиасом для histogram_quantile(процент/100, bucket_rate_foreach(фильтр, период_времени, 1)) |
count (функция_foreach(фильтр,<период_времени>)) | ||
Количество значений в массиве, возвращаемом функцией foreach. | функция_foreach - функция foreach, для которой нужно подсчитать количество возвращаемых значений (с поддерживаемыми аргументами). Смотрите функции foreach для более подробной информации. | Поддерживаются типы значений: int Поддерживаются функции foreach: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach Пример: => count(max_foreach(/*/net.if.in[*],1h)) → количество элементов данных в net.if.in, которые получали данные в течение последнего часа до текущего момента Обратите внимание, что использование count() с функциями foreach, относящимися к истории (max_foreach, avg_foreach и т.п.), может сказаться на производительности, в то время как использование функции exists_foreach(), которая работает только с данными конфигурации, не окажет такого влияния. |
histogram_quantile (квантиль,разряд1,значение1,разряд2,значение2,...) | ||
Вычисление φ-го квантиля из разрядов гистограммы. | квантиль - 0 ≤ φ ≤ 1 разрядN, значениеN - вручную введённые пары (>=2) параметров либо результат вызова bucket_rate_foreach |
Поддерживается только в вычисляемых элементах данных. Поддерживаются функции foreach: bucket_rate_foreach По функционалу соответствует 'histogram_quantile [en]' из PromQL. Возвращает -1, если значения последнего разряда 'Infinity' ("+inf") равны 0. Примеры: => histogram_quantile(0.75,1.0,last(/узел_сети/rate_bucket[1.0]),"+Inf",last(/узел_сети/rate_bucket[Inf]) => histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s)) |
item_count (фильтр) | ||
Подсчёт существующих в конфигурации элементов данных, соответствующих критериям фильтра. | фильтр - критерий для выбора элементов данных, позволяет ссылаться на группы узлов сети, узлы сети, ключи элементов данных и теги. Поддерживаются подстановочные символы. Смотрите фильтр элементов данных для более подробной информации. | Поддерживается только в вычисляемых элементах данных. Поддерживаются типы значений: int Работает как алиас для функции count(exists_foreach(фильтр)). Пример: => item_count(/*/agent.ping?[group="Host group 1"]) → количество узлов сети с элементом данных agent.ping в группе узов сети «Host group 1» |
kurtosis (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Эксцесс («островершинность») распределения вероятностей собранных значений в течение определённого периода оценки. Смотрите также: Kurtosis [en] |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => kurtosis(/узел_сети/ключ,1h) → эксцесс за последний час до текущего момента |
mad (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Среднее абсолютное отклонение собранных значений в течение определённого периода оценки. Смотрите также: Среднее абсолютное отклонение |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => mad(/узел_сети/ключ,1h) → среднее абсолютное отклонение за последний час до текущего момента |
max (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Наибольшее значение элемента данных в течение определённого периода оценки. | Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach Пример: => max(/узел_сети/ключ,1h) - min(/узел_сети/ключ,1h) → вычисление разницы между наибольшим и наименьшим значениями за последний час до текущего момента (дельта значений) |
min (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Наименьшее значение элемента данных в течение определённого периода оценки. | Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach Пример: => max(/узел_сети/ключ,1h) - min(/узел_сети/ключ,1h) → вычисление разницы между наибольшим и наименьшим значениями за последний час до текущего момента (дельта значений) |
skewness (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Асимметрия распределения вероятностей собранных значений в течение определённого периода оценки. Смотрите также: Коэффициент асимметрии |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => skewness(/узел_сети/ключ,1h) → коэффициент асимметрии за последний час до текущего момента |
stddevpop (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Среднеквадратическое отклонение для генеральной совокупности собранных значений в течение определённого периода оценки. Смотрите также: Среднеквадратическое отклонение |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => stddevpop(/узел_сети/ключ,1h) → стандартное отклонение для генеральной совокупности за последний час до текущего момента |
stddevsamp (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Среднеквадратическое отклонение для выборки собранных значений в течение определённого периода оценки. Смотрите также: Среднеквадратическое отклонение |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach At least two data values are required for this function to work. Пример: => stddevsamp(/узел_сети/ключ,1h) → стандартное отклонение для выборки за последний час до текущего момента |
sum (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Сумма собранных значений в течение определённого периода оценки. | Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach Пример: => sum(/узел_сети/ключ,1h) → сумма значений за последний час до текущего момента |
sumofsquares (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Сумма квадратов собранных значений в течение определённого периода оценки. | Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => sumofsquares(/узел_сети/ключ,1h) → сумма квадратов за последний час до текущего момента |
varpop (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Генеральная (совокупная) дисперсия собранных значений в течение определённого периода оценки. Смотрите также: Variance [en] |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Пример: => varpop(/узел_сети/ключ,1h) → дисперсия случайной величины за последний час до текущего момента |
varsamp (/узел_сети/ключ,(сек|#число)<:сдвиг_времени>) | ||
Выборочная дисперсия собранных значений в течение определённого периода оценки. Смотрите также: Выборочная дисперсия |
Смотрите общие параметры. | Поддерживаются типы значений: float, int Поддерживаются функции foreach: last_foreach Для работы этой функции требуется как минимум два значения данных. Пример: => varsamp(/узел_сети/ключ,1h) → выборочная дисперсия за последний час до текущего момента |