Здесь перечислены все поддерживаемые функции в выражениях триггеров:
ФУКНЦИЯ | |||
---|---|---|---|
Описания | Параметры | Комментарии | |
abschange | |||
Абсолютная разница между последним и предыдущим значениями. | Поддерживаемые типы значений: float, int, str, text, log Например: (предыдущее значение;последнее значение=abschange) 1;5=4 3;1=2 0;-2.5=2.5 Результат для строк: 0 - значения равны 1 - значения различаются |
||
avg (сек|#кол-во,<сдвиг_времени>) | |||
Среднее значение элемента данных за указанный период времени. | сек или кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) сдвиг_времени (опционально) - точка вычисления перемещается на указанное количество секунд назад во времени |
Поддерживаемые типы значений: float, int Примеры: => avg(#5) → среднее значение за пять последних значений => avg(3600) → среднее значение за час => avg(3600,86400) → среднее значение за час днем ранее. Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. Этот параметр очень полезен, если требуется сравнить текущее значение усреднения со значением усреднения сдвиг_времени секунд ранее. |
|
band (сек|#кол-во,маска,<сдвиг_времени>) | |||
Значение "побитового И" от значения элемента данных и маски. | сек (игнорируется) или кол-во - N-ое наиболее новое значение маска (обязательна) - 64-битное целое число (0 - 18446744073709551615) сдвиг_времени (опционально) - см. функцию avg() |
Поддерживаемые типы значений: int Обратите внимание, что #кол-во здесь работает иначе, чем во многих других функциях (смотри last()).Хотя сравнение выполняется побитовым образом, все значения должны подставляться и возвращаться в десятичном виде. Например, выполнение проверки 3-го бита, сравнением с 4, не со 100. Примеры: => band(,12)=8 or band(,12)=4 → 3-ий и 4-ый биты установлены, но не оба в одно время => band(,20)=16 → 3-ий бит не установлен и 5 бит установлен. Эта функция поддерживается начиная с Zabbix 2.2.0. |
|
change | |||
Величина разницы между последним и предыдущим значениями. | Поддерживаемые типы значений: float, int, str, text, log Например: (предыдущее значение;последнее значение=изменение) 1;5=+4 3;1=-2 0;-2.5=-2.5 Для строк: 0 - значения равны 1 - значения различаются |
||
count (сек|#кол-во,<шаблон>,<оператор>,<сдвиг_времени>) | |||
Количество собранных значений за указанный период вычисления. | сек или кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) шаблон (опционально) - требуемый шаблон (целые числа - точное совпадение оператор (опционально) Поддерживаемые операторы : eq - равноne - не равно gt - больше ge - больше или равно lt - меньше le - меньше или равно like - совпадают, если содержат шаблон (регистрозависимое) band - побитовое И (поддерживается начиная с Zabbix 2.2.0). Обратите внимание: eq (по умолчанию), ne, gt, ge, lt, le, band поддерживаются целочисленными элементами данных eq (по умолчанию), ne, gt, ge, lt, le поддерживаются числовыми с плавающей точкой элементами данных like (по умолчанию), eq, ne поддерживаются строковыми, текстовыми и журнальными элементами данных сдвиг_времени (опционально) - смотрите avg() |
Поддерживаемые типы значений: float, integer, string, text, log Элементы данных с плавающей точкой совпадают с точностью до 0.000001. При наличии band третьим параметром, второй параметр можно указывать двумя числами, разделенными с помощью '/': количество_для_сравнения/маска. count() вычисляет "побитовое И", используя значение и маску, и сравнивает результат с количеством_для_сравнения. Если результат "побитового И" равен количеству_для_сравнения, значение засчитывается. Если количество_для_сравнения и маска равны, то необходимо указать только параметр маска (без '/'). Примеры: => count(600) → количество значений за последние 10 минут => count(10m,"error",eq) → количество значений за последние 10 минут, которые равны 'error' => count(600,12) → количество значений за последние 10 минут, которые равны '12' => count(600,12,gt) → количество значений за последние 10 минут, которые больше '12' => count(#10,12,gt) → количество значений из последних 10 значений, которые больше '12' => count(600,12,gt,86400) → количество значений за 10 минут 24 часами ранее, которые больше '12' => count(600,6/7,band) → количество значений за последние 10 минут, которые имеют '110' (в бинарном виде) в 3 младших битах. => count(600,,,86400) → количество значений за 10 минут 24 часами ранее Параметр #кол-во поддерживается начиная с Zabbix 1.6.1.Параметр сдвиг_времени и строковые операторы поддерживаются начиная с Zabbix 1.8.2. |
|
date | |||
Текущая дата в формате ГГГГММДД. | Поддерживаемые типы значений: любые Пример результата: 20150731 |
||
dayofmonth | |||
День месяца в диапазоне от 1 до 31. | Поддерживаемые типы значений: любые Эта функция поддерживается начиная с Zabbix 1.8.5. |
||
dayofweek | |||
День недели в диапазоне от 1 до 7 (Пн - 1, Вс - 7). | Поддерживаемые типы значений: любые | ||
delta (сек|#кол-во,<сдвиг_времени>) | |||
Разницы между максимальным и минимальным значениями за указанный период вычисления ('max()' минус 'min()'). | сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: float, int Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. |
|
diff | |||
Проверка, различаются ли последнее и предыдущее значения. | Поддерживаемые типы значений: float, int, str, text, log Возвращает: 1 - последнее и предыдущее значения различаются 0 - в противном случае |
||
fuzzytime (сек) | |||
Проверка, на сколько отличается штамп времени значения элемента данных от времени Zabbix сервера. | сек - секунды | Поддерживаемые типы значений: float, int Возвращает: 0 - если разница между штампом времени значения элемента данных и штампом времени Zabbix сервера больше T секунд 1 - в противном случае. Обычно используется с system.localtime для проверки, что локальное время синхронизировано с локальным временем Zabbix сервера. Также можно использовать с ключем vfs.file.time[/путь/к/файлу,modify] для проверки, что файл не обновлялся длительное время. Пример: => fuzzytime(60)=0 → обнаружение проблемы, если разница во времени больше 60 секунд |
|
iregexp (шаблон,<сек|#кол-во>) | |||
Функция нечувствительный к регистру аналог функции regexp(). | смотри regexp() | Поддерживаемые типы значений: str, log, text | |
last (сек|#кол-во,<сдвиг_времени>) | |||
Самое новое значение. | сек (игнорируется) или #кол-во - N-ое самое новое значение сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: float, int, str, text, log Обратите внимание, что #кол-во здесь работает иначе, чем во многих других функциях.Например: last() всегда идентичен last(#1) last(#3) - третье самое новое значение (не три последних значения) Zabbix не гарантирует точный порядок значений, если в истории существуют более двух значений менее чем за секунду.. Параметр #кол-во поддерживается начиная с Zabbix 1.6.2.Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. |
|
logeventid (шаблон) | |||
Проверка, совпадает ли ID события последней записи из журнала указанному регулярному выражению. | шаблон - регулярное выражение описывающее требуемый шаблон, в формате расширенных регулярных выражений POSIX. | Поддерживаемые типы значений: log Возвращает: 0 - не совпадает 1 - совпадает Эта функция поддерживается начиная с Zabbix 1.8.5. |
|
logseverity | |||
Важность события последней записи в журнале. | Поддерживаемые типы значений: log Возвращает: 0 - важность по умолчанию N - важность (целое число, полезно для журналов событий Windows: 1 - Уведомление, 2 - Предупреждение, 4 - Ошибка, 7 - Аудит отказов, 8 - Аудит успехов, 9 - Критическая ошибка, 10 - Детали). Zabbix берет важность журнала из поля Информация журнала событий Windows. |
||
logsource (шаблон) | |||
Проверка, совпадает ли параметр источнику последней записи в журнале. | шаблон - требуемая строка | Поддерживаемые типы значений: log Возвращает: 0 - не совпадает 1 - совпадает Обычно используется для журналов событий Windows. Например, logsource("VMware Server"). |
|
max (сек|#кол-во,<сдвиг_времени>) | |||
Максимальное значение за указанный период вычисления. | сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: float, int Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. |
|
min (сек|#кол-во,<сдвиг_времени>) | |||
Минимальное значение за указанный период вычисления. | сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: float, int Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. |
|
nodata (сек) | |||
Проверка, отсутствия полученных данных. | сек - период вычисления в секундах. Период не должен быть меньше 30 секундам. | Поддерживаемые типы значений: любые Результат: 1 - если нет полученных данных за указанный период времени 0 - в противном случае Обратите внимание, эта функция отобразит ошибку в случае, если за указанный период в первом параметре: - нет данных и Zabbix сервер был перезапущен - нет данных и было завершено обслуживание - нет данных и элемент данных был добавлен или активирован снова Ошибки отображаются в колонке Инфо в настройке триггеров. |
|
now | |||
Количество секунд начиная с Epoch (00:00:00 UTC, 1 Января, 1970). | Поддерживаемые типы значений: любые | ||
prev | |||
Предыдущее значение. | Поддерживаемые типы значений: float, int, str, text, log Результатом является то же самое, что и last(#2). |
||
regexp (шаблон,<сек|#кол-во>) | |||
Проверка, совпадает ли последне (самое новое) значение с регулярным выражением. | шаблон - регулярное выражение, в формате расширенных регулярных выражений POSIX. сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки). В этом случае, может быть обработано более одного значения. |
Поддерживаемые типы значений: str, text, log Результат: 1 - найдено 0 - в противном случае Если обрабатывается более одного значения, тогда '1' возвращается, если имеется по крайней мере одно совпавшее значение. Эта функция является чувствительной к регистру. |
|
str (шаблон,<сек|#кол-во>) | |||
Поиск строки в последнем (самом новом) значении. | шаблон - требуемая строка сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки). В этом случае, может быть обработано более одного значения. |
Поддерживаемые типы значений: str, text, log Результат: 1 - найдено 0 - в противном случае Если обрабатывается более одного значения, тогда '1' возвращается, если имеется по крайней мере одно совпавшее значение. Эта функция является чувствительной к регистру. |
|
strlen (сек|#кол-во,<сдвиг_времени>) | |||
Длина последнего (самого нового) значения в символах (не в байтах). | сек (игнорируется) или #кол-во - N-ое самое новое значение сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: str, text, log Обратите внимание, что #кол-во здесь работает иначе, чем во многих других функциях.Примеры: => strlen()(идентично strlen(#1)) → длина самого значения => strlen(#3) → длина третьего самого нового значения => strlen(,86400) → длина самого нового значения днем ранее. Эта функция поддерживается начиная с Zabbix 1.8.4. |
|
sum (сек|#кол-во,<сдвиг_времени>) | |||
Сумма собранных значений за указанный период вычисления. | сек или #кол-во - период вычисления в секундах или в последних собранных значениях (начинается с решетки) сдвиг_времени (опционально) - смотри avg() |
Поддерживаемые типы значений: float, int Параметр сдвиг_времени поддерживается начиная с Zabbix 1.8.2. |
|
time | |||
Текущее время в формате ЧЧММСС. | Поддерживаемые типы значений: любые Пример возвращаемого значения: 123055 |