Все перечисленные здесь функции поддерживаются в:
Функции перечислены без подробных сведений. Нажмите на функцию, чтобы увидеть полную информацию.
Функция | Описание |
---|---|
change | Величина разницы между последним и предыдущим значениями. |
changecount | Количество изменений между соседними значениями за определённый период вычисления. |
count | Количество значений за определённый период вычисления. |
countunique | Количество уникальных значений за определённый период вычисления. |
find | Поиск соответствующего значения за определённый период вычисления. |
first | Первое (самое старое) значение за определённый период вычисления. |
fuzzytime | Проверка того, насколько время пассивного агента отличается от времени Zabbix сервера/прокси. |
last | Самое новое значение. |
logeventid | Проверка, соответствует ли указанному регулярному выражению идентификатор события последней записи из журнала. |
logseverity | Важность события последней записи в журнале. |
logsource | Проверка, соответствует ли регулярному выражению источник последней записи в журнале. |
monodec | Проверка наличия монотонного убывания значений. |
monoinc | Проверка наличия монотонного возрастания значений. |
nodata | Проверка отсутствия полученных данных. |
percentile | P-й процентиль периода, где P (процент) указывается третьим параметром. |
rate | Усреднённая за секунду скорость увеличения монотонно возрастающего счётчика в течение указанного периода времени. |
/узел_сети/ключ
является общим обязательным первым параметром для функций, ссылающихся на историю элемента данных узла сети(сек|#число)<:сдвиг_времени>
является общим вторым параметром для функций, ссылающихся на историю элемента данных узла сети, где:
Некоторые общие замечания о параметрах функций:
<
>
/узел_сети/ключ
и (сек|#число)<:сдвиг_времени>
никогда не должны заключаться в кавычкиВеличина разницы между последним и предыдущим значениями.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Для строк возвращается: 0 — значения равны; 1 — значения отличаются.
Параметры: смотрите общие параметры.
Комментарии:
+4
-2
-2.5
Примеры:
Количество изменений между соседними значениями за определённый период вычисления.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Параметры:
Для нечисловых типов значений параметр режим игнорируется.
Примеры:
changecount(/узел_сети/ключ,1w) #количество изменений значения за последнюю неделю до текущего момента
changecount(/узел_сети/ключ,#10,"inc") #количество возрастаний значений (относительно соседнего значения) среди последних 10 значений
changecount(/узел_сети/ключ,24h,"dec") #количество убываний значений (относительно соседнего значения) за последние 24 часа до текущего момента
Количество значений за определённый период вычисления.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Параметры:
операторы
:шаблоне
шаблоне
Комментарии:
шаблон
может быть указан как два числа, разделённых косой чертой («/»): число_для_сравнения/маска. count() вычисляет «побитовое И» из значения и маски и сравнивает результат с числом_для_сравнения. Если результат «побитового И» равен числу_для_сравнения, то значение считается.шаблон
может быть обычным или глобальным (начинающимся с «@») регулярным выражением. В случае глобальных регулярных выражений чувствительность к регистру наследуется из настроек глобального регулярного выражения. При проверке соответствия регулярному выражению, значения с плавающей точкой всегда будут представлены с 4 цифрами после десятичной точки («.»). Также обратите внимение, что для больших чисел различие между десятичным (хранящимся в базе данных) и двоичным (используемом сервером Zabbix) представлениями может повлиять на 4-ю десятичную цифру.Примеры:
count(/узел_сети/ключ,10m) #количество значений за последние 10 минут до текущего момента
count(/узел_сети/ключ,10m,"like","error") #количество значений за последние 10 минут до текущего момента, которые содержат «error»
count(/узел_сети/ключ,10m,,12) #количество значений за последние 10 минут до текущего момента, которые равны «12»
count(/узел_сети/ключ,10m,"gt",12) #количество значений за последние 10 минут до текущего момента, превышающих «12»
count(/узел_сети/ключ,#10,"gt",12) #количество значений среди 10 последних значений до текущего момента, которые больше чем «12»
count(/узел_сети/ключ,10m:now-1d,"gt",12) #количество значений за период между (24 часа и 10 минут назад) и (24 часа назад) от текущего момента, которые превышают «12»
count(/узел_сети/ключ,10m,"bitand","6/7") #количество значений за последние 10 минут до текущего момента, у которых в двоичном представлении последние три значащих бита равны «110».
count(/узел_сети/ключ,10m:now-1d) #количество значений за период между (24 часа и 10 минут назад) и (24 часа назад) от текущего момента
Количество уникальных значений за определённый период вычисления.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Параметры:
операторы
:шаблоне
шаблоне
Комментарии:
шаблон
может быть указан как два числа, разделённых косой чертой («/»): число_для_сравнения/маска. countunique() вычисляет «побитовое И» из значения и маски и сравнивает результат с числом_для_сравнения. Если результат «побитового И» равен числу_для_сравнения, то значение считается.шаблон
может быть обычным или глобальным (начинающимся с «@») регулярным выражением. В случае глобальных регулярных выражений чувствительность к регистру наследуется из настроек глобального регулярного выражения. При проверке соответствия регулярному выражению, значения с плавающей точкой всегда будут представлены с 4 цифрами после десятичной точки («.»). Также обратите внимение, что для больших чисел различие между десятичным (хранящимся в базе данных) и двоичным (используемом сервером Zabbix) представлениями может повлиять на 4-ю десятичную цифру.Примеры:
countunique(/узел_сети/ключ,10m) #количество уникальных значений за последние 10 минут до текущего момента
countunique(/узел_сети/ключ,10m,"like","error") #количество уникальных значений за последние 10 минут до текущего момента, которые содержат «error»
countunique(/узел_сети/ключ,10m,,12) #количество уникальных значений за последние 10 минут до текущего момента, которые равны «12»
countunique(/узел_сети/ключ,10m,"gt",12) #количество уникальных значений за последние 10 минут до текущего момента, превышающих «12»
countunique(/узел_сети/ключ,#10,"gt",12) #количество уникальных значений среди 10 последних значений до текущего момента, которые больше чем «12»
countunique(/узел_сети/ключ,10m:now-1d,"gt",12) #количество уникальных значений за период между (24 часа и 10 минут назад) и (24 часа назад) от текущего момента, которые превышают «12»
countunique(/узел_сети/ключ,10m,"bitand","6/7") #количество уникальных значений за последние 10 минут до текущего момента, у которых в двоичном представлении последние три значащих бита равны «110».
countunique(/узел_сети/ключ,10m:now-1d) #количество уникальных значений за период между (24 часа и 10 минут назад) и (24 часа назад) от текущего момента
Поиск соответствующего значения за определённый период вычисления.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Возвращает: 1 — найдено; 0 — в противном случае.
Параметры:
операторы
:шаблоне
(с учётом регистра)шаблоне
шаблоне
оператор
— regexp или iregexp.Комментарии:
шаблон
может быть обычным или глобальным (начинающимся с «@») регулярным выражением. В случае глобальных регулярных выражений чувствительность к регистру наследуется из настроек глобального регулярного выражения.Пример:
find(/узел_сети/ключ,10m,"like","error") #найти значение, содержащее «error» за последние 10 минут до текущего момента
Первое (самое старое) значение за указанный период вычисления.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Параметры:
Смотрите также last().
Пример:
first(/узел_сети/ключ,1h) #извлечь самое старое значение за последний час вплоть до текущего момента
Проверка того, насколько время пассивного агента отличается от времени Zabbix сервера/прокси.
Поддерживаемые типы значений: Float, Integer.
Возвращает: 1 — если разница между значением пассивного элемента данных (как штампа времени) и штампом времени Zabbix сервера/прокси (временем получения значения) меньше или равна сек секунд; 0 — в противном случае.
Параметры:
Комментарии:
vfs.file.time[/путь/файл,modify]
для проверки, что файл не обновлялся длительное время;fuzzytime(/узел_сети/system.localtime,60s)=0 or last(/узел_сети/trap)<>0
.Пример:
fuzzytime(/узел_сети/ключ,60s)=0 #обнаружение проблемы, если разница во времени превышает 60 секунд
Самое новое значение.
Поддерживаемые типы значений: Float, Integer, String, Text, Log.
Параметры:
Комментарии:
last(/узел_сети/ключ)
всегда идентичен last(/узел_сети/ключ,#1)
; last(/узел_сети/ключ,#3)
— третье из самых новых значение (не три последних значения);Примеры:
last(/узел_сети/ключ) #извлечь последнее значение
last(/узел_сети/ключ,#2) #извлечь предыдущее значение
last(/узел_сети/ключ,#1) <> last(/узел_сети/ключ,#2) #последнее значение отличается от предыдущего
Проверка, соответствует ли указанному регулярному выражению идентификатор события последней записи из журнала.
Поддерживаемые типы значений: Log.
Возвращает: 0 — нет соответствия; 1 — соответствует.
Параметры:
Важность события последней записи в журнале.
Поддерживаемые типы значений: Log.
Возвращает: 0 — важность по умолчанию; N — важность (целое число, полезно для журналов событий Windows: 1 — Уведомление, 2 — Предупреждение, 4 — Ошибка, 7 — Аудит отказов, 8 — Аудит успехов, 9 — Критическая ошибка, 10 — Детали).
Параметры:
Zabbix берёт важность журнала из поля Информация журнала событий Windows.
Проверка, соответствует ли регулярному выражению источник последней записи в журнале.
Поддерживаемые типы значений: Log.
Возвращает: 0 — нет соответствия; 1 — соответствует.
Параметры:
Обычно используется для журналов событий Windows.
Пример:
Проверка наличия монотонного убывания значений.
Поддерживаемые типы значений: Integer.
Возвращает: 1, если все элементы в течение указанного периода времени непрерывно уменьшаются; 0 — в противном случае.
Параметры:
Пример:
monodec(/Host1/system.swap.size[all,free],60s) + monodec(/Host2/system.swap.size[all,free],60s) + monodec(/Host3/system.swap.size[all,free],60s) #посчитать, на каком количестве узлов сети было уменьшение свободного места в области подкачки
Проверка наличия монотонного возрастания значений.
Поддерживаемые типы значений: Integer.
Возвращает: 1, если все элементы в течение указанного периода времени непрерывно возрастают; 0 — в противном случае..
Параметры:
Пример:
monoinc(/Host1/system.localtime,#3,"strict")=0 #проверка того, постоянно ли увеличивается локальное время системы
Проверка отсутствия полученных данных.
Поддерживаемые типы значений: Integer, Float, Character, Text, Log.
Возвращает: 1 — если нет полученных данных за указанный период времени; 0 — в противном случае.
Параметры:
nodata(/узел_сети/ключ,0)
запрещено.Комментарии:
nodata(/узел_сети/ключ,5m,"strict")
; в этом случае функция будет срабатывать, как только период оценки отсутствия данных (пять минут) истечёт.P-й процентиль периода, где P (процент) указывается третьим параметром.
Поддерживаемые типы значений: Float, Integer.
Параметры:
Усреднённая за секунду скорость увеличения монотонно возрастающего счётчика в течение указанного периода времени.
Поддерживаемые типы значений: Float, Integer.
Параметры:
Функционально соответствует функции «rate [en]» из PromQL.
Пример: