Zabbix Documentation 4.4

2.23.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.43.23.4

User Tools

Site Tools


ru:manual:config:items:item

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ru:manual:config:items:item [2019/02/11 08:49]
ru:manual:config:items:item [2019/04/02 06:04] (current)
Line 1: Line 1:
 +==== 1 Создание элемента данных ====
  
 +=== Обзор ===
 +
 +Для создания элемента данных в веб-интерфейсе Zabbix, выполните следующее:​
 +
 +  * Перейдите в: //​Настройка//​ -> //Узлы сети// ​
 +  * Нажмите на //​Элементы данных//​ в строке с узлом сети
 +  * Нажмите на //​Создать элемент данных//​ в правом верхнем углу экрана
 +  * В диалоге введите параметры элемента данных
 +
 +Вы также можете создать элемент данных,​ открыв уже существующий элемент данных,​ после чего нажать на кнопку //​Клонировать//​ и затем сохранить под другим именем.
 +
 +=== Настройка ===
 +
 +Вкладка **Элемент данных** содержит следующие атрибуты элементов данных.\\
 +
 +{{manual:​config:​item.png?​600|}}
 +
 +Все обязательные поля ввода отмечены красной звёздочкой.
 +
 +^Параметр^Описание^
 +|//​Имя// ​ |Имя элемента данных.\\ Поддерживаются следующие макросы,​ однако,​ их использование устарело:​\\ **$1, $2...$9** - ссылка на первый,​ второй... девятый параметры ключа элемента данных\\ Например:​ Свободно дискового пространства в $1\\ Если ключ элемента данных "​vfs.fs.size[/,​free]",​ описание автоматически изменится на "​Свободно дискового пространства в /" |
 +|//​Тип// ​ |Тип элемента данных. Смотрите отдельные разделы по [[itemtypes|типам элементов данных]].|
 +|//​Ключ// ​ |Ключ элемента данных.\\ Поддерживаемые [[itemtypes|ключи элементов данных]] описаны в отдельных разделах по типам элементов данных.\\ Ключ должен быть уникальным в пределах одного узла сети.\\ Если тип ключа '​Zabbix агент',​ '​Zabbix агент (активный)',​ '​Простая проверка'​ или '​Zabbix агрегированный',​ то значение ключа должно поддерживаться Zabbix агентом или Zabbix сервером.\\ Смотрите также: корректный [[ru:​manual:​config:​items:​item:​key|формат ключа]]. ​ |
 +|//​Интерфейс узла сети// |Выбор интерфейса узла сети. Это поле доступно при изменении элемента данных на уровне узла сети. |
 +|//Тип информации// ​ |Тип хранения данных в базе данных после всех преобразований,​ если таковые имеются.\\ **Числовой (целое положительное)** - целое 64битное число\\ **Числовой (с плавающей точкой)** - число с плавающей точкой\\ Отрицательные значения могут храниться.\\ Допустимые значения -999999999999.9999 до 999999999999.9999. \\ Начиная с Zabbix 2.2, также поддерживается получение значений в научном представлении. Например,​ 1e+7, 1e-4.\\ **Символ** - короткие текстовые данные\\ **Журнал** - длинные текстовые данные с необязательными свойствами для журналов (штамп времени,​ источник,​ важность,​ logeventid).\\ **Текст** - длинные текстовые данные. Смотрите также [[#​Ограничения_текстовых_данных|ограничения по текстовым данных]]. |
 +|//​Единица измерения// ​ |Если указан символ единицы измерения,​ Zabbix добавит пост обработку полученного значения и отобразит его с заданным постфиксом единицы измерения.\\ По умолчанию,​ если исходное значение превышает 1000, оно делится на 1000 и так отображается. Например,​ если вы задали //bps// и полученное значение равно 881764, оно будет отображено как 881.76 Kbps. \\ Для единиц измерения **B** (байт), **Bps** (байты в секунду) используется специальная обработка,​ при которой значение делится на 1024. Таким образом,​ если единица измерения указана как **B** или **Bps**, Zabbix будет отображать:​\\ 1 как 1B/1Bps\\ 1024 как 1KB/1KBps\\ 1536 как 1.5KB/​1.5KBps\\ Специальная обработка используется и для следующих единиц измерения связанных со временем:​\\ **unixtime** - переводится в "​гггг.мм.дд чч:​мм:​сс"​. Для корректного перевода,​ возвращаемое значение должно быть с типом данных //​Числовой (целое положительное)//​.\\ **uptime** - переводится в "​чч:​мм:​сс"​ или в "N дней, чч:​мм:​сс"​\\ Например,​ если вы получили значение равное 881764 (секунд),​ оно отобразится как "10 дней, 04:​56:​04"​\\ **s** - переводится в "​ггг ммм ддд ччч ммм ссс мс"; параметр рассматривается как количество секунд.\\ Например,​ если вы получили значение равное 881764 (секунд),​ оно будет отображаться как "10д 4ч 56м"​\\ Отображаются только 3 верхних основы,​ такие как "1м 15д 5ч" или "2ч 4м 46с". В случае,​ если нет дней, то тогда отображаются только два уровня - "1м 5ч" (минуты,​ секунды или миллисекунды не будут отображаться). Будет переведено в "< 1 ms", если значение меньше чем 0.001.\\ //​Обратите внимание//,​ что если единица измерения представлена с ''​!''​ префиксом,​ тогда к значениям элементов данных префиксы/​обработка единиц измерения применяться не будут. Смотрите [[#​чёрный_список_единиц_измерения|чёрный список единиц измерения]].|
 +|//​Интервал обновления// ​ |Получение нового значения по этому элементу данных каждые N секунд. Максимально допустимый интервал обновления - 86400 секунд (1 день).\\ [[:​ru/​manual/​appendix/​suffixes|Функции времени]] поддерживаются,​ например,​ 30s, 1m, 2h, 1d.\\ Поддерживаются [[:​ru/​manual/​config/​macros/​usermacros|пользовательские макросы]].\\ //​Обратите внимание//:​ Если задано значение равное '​0',​ элемент данных не будет обрабатываться. Однако,​ если также существует пользовательский интервал (гибкий/​по расписанию) с ненулевым значением,​ элемент данных будет обработан в течении длительности пользовательского интервала.\\ ​ //​Обратите внимание//,​ что у существующего пассивного элемента данных можно выполнить опрос значения немедленно,​ нажав на [[#​кнопки_диалога|кнопку]] //​Проверить сейчас//​.|
 +|//​Пользовательские интервалы// ​ |Вы можете создавать пользовательские правила проверки элемента данных:​\\ **Гибкий** - создание исключений из //​Интервала обновления//​ (интервал с другой частотой обновления)\\ **По расписанию** - создание пользовательского расписания проверки.\\ Для получения более подробной информации смотрите [[ru:​manual:​config:​items:​item:​custom_intervals|Пользовательские интервалы]].\\ [[:​ru/​manual/​appendix/​suffixes|Функции времени]] поддерживаются в поле //​Интервал//,​ например,​ 30s, 1m, 2h, 1d.\\ Поддерживаются [[:​ru/​manual/​config/​macros/​usermacros|пользовательские макросы]].\\ Проверка по расписанию поддерживается начиная с Zabix 3.0.0.\\ //​Обратите внимание//:​ Недоступно для активных элементов данных Zabbix агента. |
 +|//​Период хранения истории// ​ |Количество дней хранения в базе данных детальной истории (от 1 часа до 25 лет). Более старые данные будут удалены с помощью функции автоматической очистки истории базы данных.\\ Хранится в секундах. [[:​ru/​manual/​appendix/​suffixes|Функции времени]] поддерживаются,​ например,​ 2h, 1d.\\ Поддерживаются [[:​ru/​manual/​config/​macros/​usermacros|пользовательские макросы]].\\ Данное значение можно переопределить глобально в // Администрирование -> Общие -> [[ru:​manual:​web_interface:​frontend_sections:​administration:​general#​очистка_истории|Очистка истории]]//​. Если опция активирована,​ то вы увидите предупреждение:​ {{manual:​config:​override_item.png|}} \\ Рекомендуется хранить записанные значения как можно меньшее количество дней для уменьшения размера истории в базе данных. Вместо долговременного хранения истории значений,​ вы можете хранить более долгий срок данные динамики изменений.\\ Смотрите также [[:​ru/​manual/​config/​items/​history_and_trends|История и динамика изменений]]. ​ |
 +|//​Период хранения динамики изменений// ​ |Хранение усредненных значений (ежечасные мин, макс, сред, количество) детальной истории N дней в базе данных (от 1 дня до 25 лет). Более старые данные будут удалены с помощью функцией автоматической очистки истории базы данных.\\ Хранится в секундах. [[:​ru/​manual/​appendix/​suffixes|Функции времени]] поддерживаются,​ например,​ 24h, 1d.\\ Поддерживаются [[:​ru/​manual/​config/​macros/​usermacros|пользовательские макросы]].\\ Данное значение можно переопределить глобально в // Администрирование -> Общие -> [[manual:​web_interface:​frontend_sections:​administration:​general#​очистка_истории|Очистка истории]]//​. Если опция активирована,​ то вы увидите предупреждение:​ {{manual:​config:​override_trends.png|}} \\ //​Обратите внимание://​ Хранение динамики изменений недоступно для не числовых данных - символ,​ журнал и текст.\\ Смотрите также [[:​ru/​manual/​config/​items/​history_and_trends|История и динамика изменений]]. |
 +|//​Отображение значений// ​ |Применение преобразования значений к этому элементу данных. Преобразование значений не меняет полученные значения,​ оно служит только для отображаемых данных.\\ Работает только с целыми числовыми элементами данных.\\ Например,​ "​Windows service states"​.|
 +|//​Формат времени журнала// ​ |Доступен только для элементов данных типа **Журнал**. Поддерживаемые значения:​\\ ​    * **y**: //Год (1970-2038)//​\\ ​    * **M**: //​Месяц (01-12)//​\\ ​    * **d**: //День (01-31)//​\\ ​    * **h**: //Час (00-23)//​\\ ​    * **m**: //​Минута (00-59)//​\\ ​    * **s**: //​Секунда (00-59)//\\ Если оставить это поле пустым,​ то штамп времени не будет обрабатываться.\\ Например,​ рассмотрим следующую строку из файла журнала Zabbix агента:​\\ " 23480:​20100328:​154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211)."​\\ Она начинается с шести символьных позиций PID, далее дата, время и остальная часть строки.\\ Формат времени журнала для этой строки должен быть "​pppppp:​yyyyMMdd:​hhmmss"​.\\ Обратите внимание,​ что символы "​p"​ и ":"​ являются лишь заменителями и могут быть какими угодно,​ кроме "​yMdhms"​. |
 +|//​Новая группа элементов данных// ​ |Введите имя новой группы элементов данных для этого элемента данных. ​ | 
 +|//​Группы элементов данных// ​ |Соединение элемента данных с одним или несколькими существующими группами элементов данных.|
 +|//​Заполнение поля\\ инвентаря узла сети// |Вы можете выбрать поле инвентарных данных,​ которое будет заполняться значением элемента данных. Функция будет работать,​ если у узла сети включено автоматическое заполнение [[:​ru:​manual:​config:​hosts:​inventory|инвентарных данных]].|
 +|//​Описание//​ |Введите описание элемента данных. |
 +|//​Активировано// ​ |Отметьте для активации элемента данных,​ таким образом он будет обрабатываться. |
 +
 +<​note>​При редактировании элемента данных уровня [[ru:​manual:​config:​templates|шаблона]] на уровне узла сети, некоторое количество полей доступно только для чтения. Вы можете воспользоваться ссылкой из заголовка диалога и перейти на уровень шаблона и отредактировать элемент данных там, однако имейте в виду, что изменение элемента данных коснется всех узлов сети к которым присоединен шаблон.</​note>​
 +
 +=== Предобработка значений элемента данных ===
 +
 +Вкладка **Предобработка** позволяет задать правила преобразования полученных значений. Можно использовать одно или несколько правил предобработки до сохранения значений в базу данных. Преобразования выполняются в том порядке,​ в котором они были добавлены. Вся предобработка выполняется Zabbix сервером.
 +
 +Смотрите также: [[:​ru/​manual/​appendix/​items/​preprocessing|Детальная информация по предварительной обработке]]
 +
 +{{manual:​config:​item2.png|}}
 +
 +В параметрах предварительной обработки значений элементов данных поддерживаются [[:​ru/​manual/​config/​macros/​usermacros|пользовательские макросы]] и пользовательские макросы с контекстом.
 +
 +^Преобразование^Описание^
 +|//​Регулярное выражение// ​ |Совпадение значения с регулярным выражением <​шаблона>​ и замена значения в соответствии с <​выводом>​. Регулярное выражение поддерживает извлечение до 10 захваченных групп в \N последовательности. Элемент данных станет неподдерживаемым в случае ошибки при поиске соответствия во входящем значении.\\ Параметры:​\\ **шаблон** - регулярное выражение\\ **вывод** - шаблон форматирования вывода. \N (где N=1..9) - управляющая последовательность заменяется N-нной совпадающей группой. Управляющая последовательность \0 заменяется совпадающим текстом\\ Поддерживается начиная с 3.4.0. \\ Пожалуйста,​ обратитесь в разделу [[ru:​manual:​regular_expressions#​пример|регулярных выражений]] для ознакомления с некоторыми существующими примерами. ​ |
 +|//​Обрезка// ​ |Удаление указанных символов с начала или конца значения. ​ |
 +|//​Обрезка справа// ​ |Удаление указанных символов с конца значения. ​ |
 +|//​Обрезка слева// ​ |Удаление указанных символов с начала значения. ​ |
 +|//XML XPath// ​ |Извлечение значения или фрагмента из XML данных с использованием XPath функционала.\\ Чтобы эта опция заработала,​ Zabbix сервер необходимо скомпилировать с поддержкой libxml.\\ Примеры:​\\ ''​number(/​document/​item/​value)''​ извлечёт ''​10''​ из ''<​document><​item><​value>​10</​value></​item></​document>''​\\ ''​number(/​document/​item/​@attribute)''​ извлечёт ''​10''​ из ''<​nowiki><​document><​item attribute="​10"></​item></​document></​nowiki>''​\\ ''/​document/​item''​ извлечёт ''<​item><​value>​10</​value></​item>''​ из ''<​document><​item><​value>​10</​value></​item></​document>''​\\ Обратите внимание на то, что пространства имен не поддерживаются.\\ Поддерживается начиная с 3.4.0. ​ |
 +|//JSON Path// ​ |Извлечение значения или фрагмента с JSON данных с использованием простейшего набора функций JSONPath функционала.\\ Примеры:​\\ ''​$.document.item.value''​ извлечёт ''​10''​ с ''<​nowiki>​{"​document":​{"​item":​{"​value":​ 10}}}</​nowiki>''​\\ ''​$.document.item''​ извлечёт ''<​nowiki>​{"​value":​ 10}</​nowiki>''​ с ''<​nowiki>​{"​document":​{"​item":​{"​value":​ 10}}}</​nowiki>''​\\ ''​$['​a document'​].item.value''​ извлечёт ''​10''​ с ''<​nowiki>​{"​a document":​{"​item":​{"​value":​ 10}}}</​nowiki>''​\\ ''​$.document.items[1].value''​ извлечёт ''​20''​ с ''<​nowiki>​{"​document":​{"​items":​[{"​value":​ 10}, {"​value":​ 20}]}}</​nowiki>''​\\ ​ Обратите внимание,​ что поддерживаются только прямые пути к одиночным объектам в обозначении точкой или квадратной скобкой.\\ В JSONPath обозначении точкой ''​($.a.b.c)''​ можно использовать только буквенно-цифровые символы + символ подчёркивания . Если имя объекта JSON содержит другие символы,​ необходимо использовать обозначение квадратной скобкой ''​($['​a'​]['​b'​]['​c'​])''​. Допускается смешивание обозначений ''​($.a['​b'​].c)''​\\ Извлечение нескольких значений не поддерживается.\\ Поддерживается начиная с 3.4.0. ​ |
 +|//​Пользовательский множитель// ​ |Умножение значения на заданное целое или дробное число.\\ Использование этой опции сконвертирует полученные значения в KB, MBps, и т.д. в B, Bps. В противном случае Zabbix не сможет корректно подставить [[:​ru/​manual/​appendix/​suffixes|префиксы]] (K, M, G и т.д.).\\ Начиная с  Zabbix 2.2, также поддерживается научное представление. Например,​ 1e+70. ​ |
 +|//​Простое изменение// ​ |Вычисление разницы между текущим и предыдущим значениями.\\ Вычисляется **значение**-**пред_значение**,​ где\\ //​значение//​ - текущее значение;​ //​пред_значение//​ - ранее полученное значение\\ Эта опция может быть полезной для измерения постоянно растущего значения. Если текущее значение меньше предыдущего,​ тогда Zabbix отбрасывает это изменение (ничего не записывает) и ждет следующего значения.\\ На один элемент данных разрешена только одна операция изменения. ​ |
 +|//​Изменение в секунду// ​ |Вычисление изменения значения (разница между текущим и предыдущим значениями) скорость в секунду.\\ Вычисляется (**значение**-**пред_значение**)/​(**время**-**пред_время**),​ где\\ //​значение//​ - текущее значение;​ //​пред_значение//​ - ранее полученное значение;​ //​Время//​ - текущий штамп времени;​ //​пред_значение//​ - штамп времени предыдущего значения.\\ Эта настройка крайне полезна при получении скорости в секунду в случае постоянно увеличивающихся значений. Если текущее значение меньше чем предыдущее значение,​ Zabbix отбрасывает эту разницу (ничего не записывает) и ждет следующее значение. Такое поведение помогает отрабатывать,​ например,​ переполнение 32-битных счетчиков SNMP.\\ //​Обратите внимание//:​ Так как результатом этого вычисления может быть число с плавающей точкой,​ рекомендуется использовать '​Тип информации'​ - //​Числовой (с плавающей точкой)//,​ даже если входящие значения целые положительные числа. Это особенно актуально для маленьких чисел где дробная часть имеет значение. Если числа с плавающей точкой очень большие и могут превысить длину поля в этом случае введенное значение может быть потеряно,​ в таком случае предлагается использовать тип //​Числовой (целое положительное)//​ и это отбросит только дробную часть.\\ На один элемент данных разрешена только одна операция изменения. ​ |
 +|//​Двоичное в десятичное// ​ |Конвертация значения из логического в десятичный формат. Текстовое представление переводится в значения 0 или 1. Таким образом,​ '​TRUE'​ хранится как 1 и '​FALSE'​ хранится как 0. Все значения сопоставляются чувствительным к регистру способом. В данное время распознаются значения для:\\ //TRUE// - true, t, yes, y, on, up, running, enabled, available, ok, master\\ //FALSE// - false, f, no, n, off, down, unused, disabled, unavailable,​ err, slave\\ Кроме того, любое ненулевое значение считается TRUE, нулевое считается FALSEE.\\ Следующие значения поддерживаются начиная с 4.0.0: ​ ok, master, err, slave. |
 +|//​Восьмеричное в десятичное// ​ |Конвертация значения из восьмеричного в десятичный формат. ​ |
 +|//​Шестнадцатеричное в десятичное// ​ |Конвертация значения из шестнадцатеричного в десятичный формат. ​ |
 +
 +<note tip>​Если вы используете пользовательский множитель или хранение значений как //​Изменение в секунду//​ у элементов данных с типом информации //​Числовой (целое положительное)//​ и результирующее вычисленное значение в действительности дробное число, тогда вычисленное значение всё же будет считаться приемлемым,​ однако дробная часть будет обрезана и значение запишется как целое положительное.</​note>​
 +
 +== Кнопки диалога ==
 +
 +Кнопки в нижней части диалога позволяют выполнить несколько видов операций.
 +
 +|{{manual:​config:​button_add.png|}} ​ |Добавление элемента данных. Эта кнопка доступна только для новых элементов данных. ​ |
 +|{{manual:​config:​button_update.png|}} ​ |Обновление свойств элемента данных. ​ |
 +|{{manual:​config:​button_clone.png|}} ​ |Создание другого элемента данных на основе свойств текущего элемента данных. ​ |
 +|{{manual:​config:​button_check_now.png|}} ​ |Выполнение немедленной проверки нового значения элемента данных. Поддерживается только для **пассивных** проверок (смотрите более [[:​ru/​manual/​config/​items/​check_now|детальную информацию]]).\\ //​Обратите внимание//,​ что когда выполняется немедленная проверка значения,​ кэш конфигурации не обновляется,​ поэтому значение не будет отражать совсем недавние изменения настроек элемента данных. ​ |
 +|{{manual:​config:​button_clear_history.png|}} ​ |Удаление истории и динамики изменений элемента данных. ​ |
 +|{{manual:​config:​button_delete.png|}} ​ |Удаление элемента данных. ​ |
 +|{{manual:​config:​button_cancel.png|}} ​ |Отмена изменения свойств элемента данных. ​ |
 +
 +== Ограничения текстовых данных == 
 +
 +Ограничения текстовых данных зависят от выбранной базы данных. Перед сохранением текстовых значений в базу данных,​ эти значения обрезаются в соотвествии с ограничением типа значений в базе данных:​
 +
 +^ База данных ^  Тип информации ​ ^^^
 +^ ::: ^ Символ ​  ^ Журнал (лог) ​            ^ Текст ​            ^
 +| MySQL      | 255 символов | 65536 байт ​     | 65536 байт ​     |
 +| PostgreSQL | 255 символов | 65536 символов | 65536 символов |
 +| Oracle ​    | 255 символов | 65536 символов | 65536 символов |
 +| DB2        | 255 байт ​     | 2048 байт ​      | 2048 байт ​      |
 +
 +== Чёрный список единиц измерения ==
 +
 +По умолчанию,​ указывая единицу измерения элементу данных,​ вы увидите добавленный префикс множителя - например,​ значение '​2048'​ с единицей измерения '​B'​ будет отображаться как '​2KB'​.
 +
 +Однако,​ используя ''​!''​ префикс,​ можно избежать конвертации любой единицы измерения,​ например ''​!B''​. Чтобы лучше проиллюстрировать то, каким образом это преобразование работает с и без чёрного списка,​ просмотрите следующие примеры значений и единиц измерения:​
 +
 +  1024 !B -> 1024 B
 +  1024 B -> 1 KB
 +  61 !s -> 61 s
 +  61 s -> 1m 1s
 +  0 !uptime -> 0 uptime
 +  0 uptime -> 00:00:00
 +  0 !! -> 0 !
 +  0 ! -> 0
 +
 +<​note>​До Zabbix 4.0, имелся зашитый в код чёрный список единиц измерения,​ который состояил из ''​ms'',​ ''​rpm'',​ ''​RPM'',​ ''​%''​. Этот чёрный список считается устаревшим,​ поэтому правильным способом внесения в чёрный список подобных единиц измерения будет ''​!ms'',​ ''​!rpm'',​ ''​!RPM'',​ ''​!%''​.</​note>​
 +
 +=== Неподдерживаемые элементы данных ===
 +
 +Элемент данных может стать неподдерживаемым,​ если его значение не было получено по некоторым причинам. Такие элементы данных будут перепроверены через определенный интервал времени,​ настраиваемый в [[ru:​manual:​web_interface:​frontend_sections:​administration:​general#​остальные_параметры|разделе Администрирования]].