Vinchin Blog
How to export Excel spreadsheet report by ZABBIX
< pre > the preparation of operation and maintenance report, patrol report, operation and maintenance asset statistics, operation and maintenance performance report are all one of the normal work of operation and maintenance personnel. How to write operation and maintenance report efficiently, generate operation and maintenance report quickly, and liberate the time of operation and maintenance personnel, we need the corresponding operation and maintenance tools.
Netpod extracts data from ZABBIX and exports the data that the operation and maintenance personnel want, which can be spreadsheets or charts and pictures. In this way, it is convenient for the operation and maintenance personnel to compile the secondary operation and maintenance report, and can make exquisite operation and maintenance report and submit it to the supervisor for review, which will greatly improve the work efficiency of the operation and maintenance personnel.
(1) Select the data to export and click export.
(2) Here is a sample of the exported data
(3) It can also be exported graphically
(4) The enterprise version of netpod can also support powerful topology management
Interested students can use the chat tool with the largest number of users to contact the author nateit
Subscribe Vinchin newsletters for more: Subscribe
Categories:
General
Get more ideas from Vinchin
Преступность
Zabbix — это приложение мониторинга сервера. У него хороший веб-интерфейс. Это недостатки в Соединенных Штатах отсутствуют функции отчетов о экспорте, но Zabbix также предоставляет мощную поддержку API.https://www.zabbix.com/documentation/3.4/zh/manual/apiВы можете увидеть это подробно.
Эта система — это система, которую я написал, чтобы экспортировать данные, контролируемые Zabbix в таблицу Excel.
Springboot + JPA + POI на заднем плане
Vue + Elementui передний конец
Исходный код сначала:
Код заготовки:https://github.com/FENGZHIJIE1998/zabbix-data/
Код переднего конца:https://github.com/FENGZHIJIE1998/zabbix-data-vue/
эффект
Давайте сначала посмотрим на эффект.
Чтобы увидеть экспортируемую форму
Исторические записи данных экспорта были реализованы, установленные экспортированные элементы мониторинга, настройки сопоставления псевдонимов элементов мониторинга и функции сортировки веса.
После нескольких потоков оптимизацию данные вычисления займут около 4 секунд.
Пищевая гида:
Фон развертывания:
Код клонированияhttps://github.com/FENGZHIJIE1998/zabbix-data/
2. Измените файл конфигурации Application.yml
Нужно изменить следующие места к вашим настройкам
3. Импорт SQL.
Файл SQL является каталогом SQL Resource.
4. Начните проект.
Развернуть передний конец:
1. Клон-код фронтаhttps://github.com/FENGZHIJIE1998/zabbix-data-vue/
2. Выполните команду
npm install
npm run serve
Код введения
Фон использует Transhboot JPA POI Technology, которая не расширяется подробно.
Получить данные
Первый — это позвонить API, предоставляемую Zabbix, в DataServiceImpl, съем для данных с инструментом httpclient. Использование Zabbixapi здесь не отключается.
Объявите внутренний класс, Asynclu является многопоточным асинхронным асинхронным расчетом, потому что данные каждого хоста не пересекаются, поэтому мы используем многопоточное количество каждого хоста для расчета идей их соответствующих данных. В то же время также реализован Callable интерфейс с возвращающим значением, а рассчитанный результат возвращается.
Выполнить в соответствии с порядком строительства:
1.Login () Метод получения токена
2. Экономика () Получить предмет хоста
По установке вывода и выбораInterfaces вы можете получить нужные данные, уменьшите расход разрешения данных
String[] output = {"hostid", "host", "name", "ip"};
String[] selectInterfaces = {"ip"};
3. GetItem () Получить мониторинг
То же самое также устанавливает выходные атрибуты.
String[] output = {"itemid", "hostid", "name", "key_", "value_type", "units"};
4.Этистория () Получить исторические данные в соответствующем диапазоне времени
Настоящим обратите внимание, что исторические данные различных типов данных самой Zabbix хранятся в разных таблицах. Мы должны устанавливать параметры в соответствии с значением value_type, который вы получили в GetItem, в противном случае приготовление данных не будет доступно.
historyDTO.setHistory(Integer.valueOf(item.getValue_type()));
5. Метод Calculate () состоит в том, чтобы рассчитать полученные исторические данные, получить максимальный минимум, средний и разница. Этот шаг на самом деле основан на ваших потребностях, что вам нужно рассчитать. Обратите внимание, что вам может понадобиться преобразование подразделения, код преобразования подразделения, который я не думал о том, как конвертировать более эффективно, и большая подарка может оставить сообщение.
6. Верните расчетные данные в коллекцию RES
List<DataResponse> dataResponses = future.get();
res.addAll(dataResponses);
7. Excel Заполните данные, это не отключено, а инструкции для POI ищут ее самостоятельно.
Код введения здесь здесь
Объяснение: Эта система используется для транспортировки и технического обслуживания интрасети, поэтому нет модуля входа в систему, а небольшой партнер нуждается в моем блоге о перехвате логина.
Это первая версия. Если у вас есть какие-либо вопросы, пожалуйста, оставьте свои комментарии или выпуск. Если вы чувствуете себя легко в использовании, гостевой офицер не забудет похвалить его, вы можете пойти в GitHub, вы будете лучше.
Если у вас есть какие-либо вопросы, вы можете прокомментировать или в частном порядке, у меня есть ежедневно (Ляо) сомнение (SAO).
Я большое имя, скромный фермер Micro-Code, который готовит 996, я чувствую себя хорошо для похвалы! ! !
Zabbix: отчет печати на МФУ в организации
Часто в организации требуется получать отчет о печати, сколько страниц было напечатано на каждом МФУ за месяц или год.
Zabbix сервер не имеет механизма создания очетов, однако у Zabbix есть API интерфейс. И данный отчет можно генерировать с помощью Python и Zabbix API (https://www.zabbix.com/documentation/current/ru/manual/api) с последующим импортом данных в Excel таблицу. Предварительно собрав данные в Zabbix с МФУ с помощью snmp.
Настройки ОС
- ОС сервера Centos7
- В ОС установлены следующие пакеты:
python
openpyxl (модуль для работы с Excel таблицами)
pyzabbix (модуль для работы с API Zabbix, https://github.com/lukecyca/pyzabbix) - Для выгрузки данных в Excel, к ОС Zabbix сервера примонтирована сетевая папка.
Настройки Zabbix
- Zabbix сервер установлен в типовой конфигурации
- Созданы шаблоны и группы по производителям МФУ:
Принтеры Canon
Принтеры Kyocera
Принтеры HP
и т.д. - Создана учетная запись для Zabbix API
В Zabbix настроено Низкоуровневое обнаружение
- Диапазон IP адресов:
указаны подсети которым принадлежат ip адреса МФУ - Проверки:
SNMPv1 агент 1.3.6.1.2.1.2.2.1.6.1 ifPhysAddress, MAC адрес сетевого интерфейса
SNMPv1 агент 1.3.6.1.2.1.25.3.2.1.3.1 DeviceDescr, модель устройства «HP LaserJet P2055dn» - Критерий уникальности устройства:
SNMPv1 агент 1.3.6.1.2.1.2.2.1.6.1 лучше использовать MAC адрес, так как ip адрес у МФУ может меняться, например при смене подсети
В Zabbix настроено Действие для каждого производителя МФУ
- Тип вычисления:
A and B and C - Условия:
A — Правило обнаружения равно Принтеры в сетях x.x.x.x
B — Полученное значение содержит Canon
C — Состояние обнаружения равно Доступен - Операции:
Добавить узел сети
Добавить в группы узлов сети: Принтеры Canon
Присоединить к шаблонам: Принтеры Canon
Настройки шаблонов по производителям МФУ на примере шаблона Canon
Элементы данных:
-
Для всех элемнтов:
История значений хранится — 90 дней
Тип интерфейса — SNMPv1 агент -
Для элемента MAC адрес:
ключ — MAC
SNMP OID — 1.3.6.1.2.1.2.2.1.6.1
Интервал обновления — 1 день -
Для элемента Имя:
ключ — sysName
SNMP OID — 1.3.6.1.2.1.1.5.0
Интервал обновления — 2 часа -
Для элемента Местоположение:
ключ — sysLocation
SNMP OID — 1.3.6.1.2.1.1.6.0
Интервал обновления — 2 часа -
Для элемента Модель:
ключ — ModelName
SNMP OID — 1.3.6.1.2.1.25.3.2.1.3.1
Интервал обновления — 1 день -
Для элемента Отпечатано страниц:
ключ — PageCounter
SNMP OID — 1.3.6.1.2.1.43.10.2.1.4.1.1
Интервал обновления — 1 час
Настройки на МФУ
- должен быть включен snmp.v1
- указать sysName, в необходимом формате, напр. M0001
- указать sysLocation, в необходимом формате, напр. BC1001 (BC — бизнес центр, 1001 — кабинет)
- на некоторых МФУ параметры sysName и sysLocation не всегда вынесены в web интерфейс, в этих случаях пригодятся HP JetAdmin и Kyocera Net Viewer
Отчет prin.xslx и скрипты автоматизации
- В репозитории 3 скрипта Python:
- z_new_host.py — переименовывает добавленные, низкоуровневым обнаружением, МФУ, в соответствии с их именем sysName, заданным в настройках на МФУ
- z_update_group_host.py — обновляет группы и шаблоны хоста в соответствии с маркой МФУ
- z_hist.py — забирает исторические данные (Местоположение, Имя принтера, MAC, Количество напечатанных страниц за заданный период) с СУБД подключенной к Zabbix, записывает их в файл prin.xslx, расположенный в сетевой папке
- Запуск скриптов производится раз в сутки из cron, или можно реализовать как сервис systemd
Каким запросом найти все eventlog от компьютера pc1 ?
у компьютера pc1 hostid=10125 если верить адресной строке:
в подтверждение что 10125 это pc1 сделал запрос в таблице hosts
Мониториться будут около 80 серверов, надо вытаскивать данные по имени компьютера и eventid, чтобы в анализировать в экселе.
-
Вопрос заданболее трёх лет назад
-
5470 просмотров
select h.name, i.name, i.key_, hs.clock, hs.value
from
hosts h
join items i on h.hostid = i.hostid
join history_log hs on i.itemid = hs.itemid
where h.name = 'zabbix'
Пригласить эксперта
Писать скрипт и дергать через API?
-
Показать ещё
Загружается…
15 апр. 2023, в 04:50
7000 руб./за проект
15 апр. 2023, в 03:28
5000 руб./за проект
15 апр. 2023, в 02:02
12000 руб./за проект
Минуточку внимания
Обновлено: 14.04.2023
В этом документе приводится пример настройки выгрузки метрик WAF‑ноды в систему мониторинга Zabbix с помощью утилиты collectd-nagios .
Схема работы примера¶
В этом примере рассматривается работа с единичной метрикой curl_json-wallarm_nginx/gauge-attacks , которая показывает количество атак на приложение, находящееся под защитой WAF‑ноды.
В этом документе используется следующая схема развертывания:
WAF‑нода Валарм развернута на хосте, доступном по IP‑адресу 10.0.30.5 и полному доменному имени node.example.local .
На хосте также развернут Zabbix‑агент версии 4.0 LTS, который:
- Получает значения метрик WAF‑ноды, используя утилиту collectd-nagios .
- Слушает входящие соединения на порту 10050/TCP (пассивные проверки с помощью Zabbix Appliance).
- Передает значения метрик в Zabbix Appliance.
На отдельном хосте с IP‑адресом 10.0.30.30 (далее — «хост Docker») развернут Zabbix Appliance версии 4.0 LTS в виде Docker‑контейнера.
Zabbix Appliance включает в себя:
- Сервер Zabbix, который периодически опрашивает Zabbix‑агент, установленный на хосте с WAF‑нодой, на предмет изменения значений метрик.
- Веб-интерфейс для управления сервером Zabbix, доступный на порту 80/TCP .
Настройка выгрузки метрик в Zabbix¶
- Сервис collectd настроен на выгрузку метрик через сокет домена Unix (подробнее здесь).
- На хост Docker 10.0.30.30 уже установлен Docker Community Edition.
- WAF‑нода node.example.local уже развернута, настроена, доступна для дальнейшей настройки (например, по протоколу SSH) и работает.
Развертывание Zabbix¶
Для развертывания Zabbix Appliance 4.0 LTS выполните на хосте Docker следующую команду:
Теперь у вас есть работающая система мониторинга Zabbix.
Развертывание Zabbix‑агента¶
Установите Zabbix‑агент 4.0 LTS на хост с WAF‑нодой:
Подключитесь к WAF‑ноде (например, с помощью протокола SSH). Убедитесь, что вы работаете под аккаунтом root или другим аккаунтом с правами суперпользователя.
Подключите репозитории Zabbix (используйте пункт «Install Zabbix repository» инструкции, соответствующей используемой операционной системе).
Установите Zabbix‑агент, выполнив одну из следующих команд в зависимости от используемой операционной системы:
Настройте Zabbix‑агент для работы с Zabbix Appliance. Для этого внесите следующие изменения в файл конфигурации агента /etc/zabbix/zabbix_agentd.conf :
Настройка сбора метрик с помощью Zabbix‑агента¶
Подключитесь к WAF‑ноде (например, с помощью протокола SSH) и настройте сбор метрик с помощью Zabbix‑агента. Для этого выполните следующие действия на хосте с WAF‑нодой:
1. Установите утилиту collectd_nagios .¶
Для этого выполните следующую команду:
2. Добавьте возможность запускать утилиту collectd-nagios с повышенными привилегиями от имени пользователя zabbix ¶
Для этого с помощью утилиты visudo добавьте следующую строку в файл /etc/sudoers :
Это позволит пользователю zabbix запускать утилиту collectd-nagios с правами суперпользователя с помощью утилиты sudo без ввода пароля.
Запуск collectd-nagios с правами суперпользователя
Утилита должна запускаться с правами суперпользователя, поскольку она использует сокет collectd (сокет домена Unix) для получения данных. Доступ к этому сокету есть только у суперпользователя.
Также, в качестве альтернативы добавлению пользователя zabbix в sudoers , вы можете настроить Zabbix‑агент так, чтобы он запускался с правами пользователя root (это может представлять угрозу безопасности, поэтому использовать этот способ не рекомендуется). Это достигается с помощью включения опции AllowRoot в конфигурационном файле агента.
3. Убедитесь, что пользователь zabbix может получать значения метрик от collectd ¶
Для этого выполните следующую тестовую команду на WAF‑ноде:
Эта команда позволяет пользователю zabbix получить значение метрики curl_json-wallarm_nginx/gauge-attacks (количество зафиксированных атак) для хоста node.example.local с WAF‑нодой.
Пример вывода команды:
4. Добавьте в файл конфигурации Zabbix‑агента на WAF‑ноде пользовательские параметры для получения требуемых вам метрик¶
Например, чтобы создать пользовательский параметр wallarm_nginx-gauge-attacks , который будет соответствовать метрике curl_json-wallarm_nginx/gauge-attacks для WAF‑ноды с полным доменным именем node.example.local , добавьте в файл конфигурации следующую строку:
Извлечение значения метрики
Для извлечения значения метрики, идущего после value= в выводе утилиты collectd-nagios (например, OKAY: 0 critical, 0 warning, 1 okay | value=0.000000;;;; ), используется перенаправление вывода в утилиту sed с последующим выполнением скрипта.
Обратитесь к документации sed для получения дополнительных сведений о синтаксисе его скриптов.
5. После того, как в файл конфигурации Zabbix‑агента добавлены все необходимые команды, перезапустите агент¶
Для этого выполните одну из следующих команд:
Настройка завершена¶
Теперь вы можете осуществлять мониторинг пользовательских параметров, связанных со специфичными для Валарм метриками, с помощью Zabbix.
Функции Импорта/Экспорта в Zabbix дают возможность эффективного обмена различными наборами настроек.
Данные экспортируются в XML формат, который легко читать и изменять. Случаи использования:
Пользователи Zabbix могут делиться параметрами настроек.
Универсальный формат XML делает возможной интеграцию и импорт/экспорт данных со сторонними инструментами и приложениями.
Экспортирование и импортирование карт сетей поддерживается начиная с Zabbix версии 1.8.2
13.2 Обзор
В настоящее время для экспортирования поддерживаются две основные категории настроек: узлы сети и связанные с ними данные, сетевые карты.
13.2.1 Импорт/Экспорт узлов сети
В Zabbix имеется возможность Импорта/Экспорта следующих данных:
13.2.2 Импорт/Экспорт карт сети
Начиная с версии 1.8.2 Zabbix поддерживает импорт/экспорт следующих элементов:
Все элементы карты, включая изображения, триггеры, узлы сети, группы узлов сети и карты сети;
Все связи с сопутствующими данными, включая подписи и индикаторы состояний.
Кроме того, начиная с версии 1.8.3 используемые рисунки (иконки и фоновые изображения) могут быть также экспортированы.
13.2.3 Импорт/Экспорт комплексных экранов
Zabbix поддерживает импорт/экспорт комплексных экранов и всех их элементов.
13.3 Экспорт узлов сети
В версиях Zabbix до 1.8.3, экспорт узлов сети и шаблонов доступен из Настройки → Экспорт/Импорт. Начиная с версии 1.8.3, управление импортом и экспортом доступно на соответствующих страницах (Настройки → Узлы сети и Настройки → Шаблоны).
13.3.1 Начиная с Zabbix 1.8.3
13.3.1.1 Шаг 1
Перейдите либо в Настройка → Узлы сети, либо в Настройка → Шаблоны, в зависимости от того чтобы Вы хотите экспортировать. Установите флажки рядом с экспортируемыми элементами.
13.3.1.2 Шаг 2
Убедитесь, что выбран пункт Экспортировать выбранное в выпадающем списке ниже списка узлов сети или шаблонов, затем нажмите кнопку Выполнить и сохраните файл.
13.3.2 До версии Zabbix 1.8.3
Шаг 1
Выберите элементы для экспорта
Мы выбрали узел сети “Template_Linux” и все его элементы данных и триггеры.
Шаг 2
13.4 Импорт узла сети
В Zabbix версиях ниже 1.8.3, импорт узлов сети и шаблонов доступен в Настройки → Экспорт/Импорт. Начиная с версии 1.8.3, управление импортом и экспортом доступно на соответствующих страницах настройки (Настройки → Узлы сети и Настройки → Шаблоны).
Шаг 1
Установите параметры для импортирования данных и нажмите “Импорт”.
Обратите внимание на следующие параметры:
Параметр | Описание |
---|---|
Файл для импорта | Имя XML файла. |
Правила | Элемент определяет элемент данных из XML файла. Если параметр Обновление установлен для Существующее элементов данных, то импортирование будет обновлять его в соответствии с данными взятыми из файла. В противном случае элемент данных не будет обновлен. Если параметр Добавлять установлен для Отсутствующих элементов данных, то импортирование будет добавлять новый элемент данных на основе данных из файла. В противном случае элемент данных не будет добавлен. |
Обратите внимание, что в версиях Zabbix 1.8.x триггера располагаются ранее элементов данных при экспорте и такие данные не будут импортироваться в Zabbix версии 1.6.x. Если сложилась такая ситуация, тогда элементы данных должны быть перемещены ранее триггеров
13.5 Экспорт и импорт карт сети
Экспорт и импорт карт сети доступен начиная с версии 1.8.2 .
Элементы управления экспортом и импортом карт сети могут быть найдены в меню Настройка → Карты сети, где отображаются все установленные карты сети.
13.5.1 Экспорт карт сети
В левом нижнем углу имеется список с доступными двумя опциями: “Экспортировать выбранное” и “Удалить”. Для экспорта карт сети:
Выберите файл, в который будет сохранено данные XML с экспортированными картами сети.
13.5.2 Импорт карт сети
Импортирование карт такое же простое как и экспортирование. Сверху справа рядом с кнопкой “Создать карту” вы можете найти новую кнопку — “Импорт карты”.
Для импортирования карты:
Нажмите на кнопку “Выбрать файл” для выбора XML файла содержащего данные о экспортированных картах сети Zabbix;
Проверьте опцию “Обновить существующее”, если вы хотите обновить (перезаписать) существующие карты;
Проверьте опцию “Добавить отсутствующее”, если вы хотите создать новую карту, если такой карты нет;
Нажмите импорт для отправки требуемых данных веб-интерфейсу Zabbix;
Подождите обновления страницы. Это может занять некоторое время, если у вас много карт для импорта или много узлов сети, триггеров и т.д.. Веб-интерфейс Zabbix сообщит вам о успешном импорте или об ошибке импорта.
Нажмите на ссылку “Детали” слева сверху для просмотра подробной информации о результатах импортирования, или чтобы узнать причину ошибки импорта.
13.5.3 Что экспортируется?
Экспортируется только структура карты сети. Это означает, что экспортируются все настройки карт сети, все содержащиеся элементы с их настройками, а так же все связи и индикаторы состояний связей.
13.5.4 Что не экспортируется?
Любые карты, группы узлов сети, узлы сети, триггеры, изображения или любые другие элементы связанные с экспортируемой картой не экспортируются. Это означает, что если хотя бы один элемент карты ссылается на отсутствующий элемент данных, тогда импортирование будет не успешным.
13.5.5 Формат экспорта
Например экспорт пустой карты с фоновым изображением из узла распределенной установки:
13.5.5.1 Элементы карты
Давайте возьмем XML выборку некоторых элементов карты Zabbix, например:
<selement> является открывающим тэгом для элемента (сокращение от “Элемент карты сети);
<selementid> уникальный id элемента, используемый для связей на карте;
<elementid> ссылка на физическую запись в Zabbix, которая изображена на карте сети (карта, группа узлов сети/узел сети и др.);
<node> тэг будет присутствовать, если экспортируемая карта сделана на распределенной установке, иначе пропускается;
<elementtype> описывает, что за тип элемента хранится в тэге <elementid>;
При импортировании XML, значения selementid не должны совпадать с любыми значениями в существующем наборе данных — они используются только для определения связей на карте.
13.5.5.2 Типы элементов и их сохранение
Тэг elementtype в экспортируемой карте может быть одним из:
Значение | Тип |
---|---|
0 | Узел сети |
1 | Карта сети |
2 | Триггер |
3 | Группа узлов сети |
4 | Изображение |
Установка DM (распределенный мониторинг)
Одиночная установка сервера
Узлы сети ссылаются по имени узла сети.
Установка DM (распределенный мониторинг)
Одиночная установка сервера
Карты ссылаются по имени карт.
Триггеры описываются более сложным способом: Установка DM (распределенный мониторинг)
Одиночная установка сервера
Триггеры ссылаются по имени узла сети, имени триггера и выражению триггера.
Установка DM (распределенный мониторинг)
Одиночная установка сервера
Группы узлов сети ссылаются по имени группы узлов сети.
Для изображений <elementid> ноды может быть пропущенным.
Узлы <iconid_off>, <iconid_on>, <iconid_unknown>, <iconid_maintenance> и <iconid_disabled> описываются, какие иконки будут использоваться для элементов карты в зависимости от его состояния.
По умолчанию используется пиктограмма <iconid_off>.
Внутри блока иконки, указывается само изображение: Установка DM (распределенный мониторинг)
Одиночная установка сервера
Чтобы использовалась иконка по умолчанию для любого состояния, нода для этого состояния должна быть пропущена в блоке <selement>.
13.5.5.3 Подписи к элементам
<label> описываются подписи к элементам карты. Здесь могут использоваться макросы.
<label_location> используется для позиционирования подписи к элементам:
Значение | Тип |
---|---|
-1 | использовать значение по умолчанию для карты |
0 | снизу |
1 | слева |
2 | справа |
3 | сверху |
13.5.5.4 Позиционирование элемента
Тэги <x> и <y> используются для позиционирования элемента карты по координатам x и y.
13.5.5.5 Связи на карте
тэги <selemetid1> и <selementid2> используются для указания элементов карты, которые объединяет связь.
<drawtype> определяет стиль связи по умолчанию:
Значение | Стиль |
---|---|
0 | линия |
2 | жирная линия |
3 | точечная линия |
4 | пунктирная линия |
* <color> указывает цвет связи по умолчанию;
<linktriggers> содержит информацию о индикаторах состояния связи.
<triggerid> описывает какой триггер используется для индикации состояния связи. Связанный триггер ссылается так же как и триггер элемента карты;
<drawtype> и <color> используются для индикации того, как связь должна быть отрисована на карте, если этот триггер имеет наивысший уровень важности среди всех активных триггеров, присоединенных к этой связи.
13.5.5.6 Изображения
Экспорт/импорт изображений поддерживается в Zabbix начиная с версии 1.8.3
Эта функция дает возможность импорта и экспорта изображений, использованных в картах сети. Если экспортируемая карта сети использует какие-либо изображения, то они будут записаны в результирующий XML файл. Например, как будет выглядеть экспортированное изображение:
Значение для тэга <encodedImage> укорочено в этом примере
<imagetype> — тип изображения, где 1 ⇒ иконка, 2⇒ фоновое изображение
При импортировании, отсутствующие изображения могут быть добавлены и существующие изображения могут быть перезаписаны в зависимости от выбранных галочек. Импортирование изображений доступно только пользователем с типом Zabbix Super Admin.
Внимание: если выбрано замену существующего изображения, то это каснется всех карт сети, в которых используется это изображение. В результате будет использоваться новое изображение.
Есть возможность импортировать только изображения, сняв обе галочки напротив “Карта сети”.
13.6 Экспорт и импорт комплексных экранов
Экспорт и импорт комплексных экранов доступен в Zabbix начиная с версии 1.8.2.
Управление экспортом и импортом комплексных экранов вы можете найти в меню Настройка → Комплексные экраны, там где и отображаются все настройки комплексных экранов.
13.6.1 Экспортирование комплексного экрана
В левом нижнем углу имеется список в двумя опциями: “Экспортировать выбранное” и “Удалить”.
Для экспорта комплексных экранов:
Установите флажки выбора рядом с комплексными экранами, которые вы хотите экспортировать;
Выберите “Экспортировать выбранное”, если вы этого еще не выбрали;
Выберите где вы хотите сохранить файл, в который будут сохранены XML данные с экспортированными комплексными экранами Zabbix.
13.6.2 Импортирование комплексного экрана
Импортирование комплексных экранов производить так же легко как и экспортирование. В верхнем правом углу рядом с кнопкой “Создать комплексный экран”, вы можете найти новую кнопку — “Импорт комплексного экрана”.
Для импорта комплексного экрана:
Нажмите на кнопку и выберите XML файл, содержащий экспортированные комплексные экраны Zabbix;
Отметьте галочку “Обновить существующее”, если вы хотите обновить (перезаписать) существующие комплексные экраны;
Отметьте галочку “Добавить отсутствующее”, если вы хотите создать новый комплексный экран, в случае если таковой отсутствует;
Нажмите импорт для начала импорта требуемых данных в веб-интерфейс Zabbix;
Подождите пока страница обновиться. Этот процесс может занять некоторое время если у вас много комплексных экранов для импорта или они содержат много элементов. Веб-интерфейс Zabbix сообщит о успешности или ошибке импортирования комплексных экранов. Нажмите на ссылку “Детали” в левом верхнем углу для просмотра подробной информации о том, что было сделано при импортировании или почему не удалось выполнить импорт.
13.6.3 Экспортируемые данные
Экспортируется только структура комплексного экрана. Она включает все настройки комплексного экрана и все элементы комплексного экрана вместе с их настройками.
13.6.4 Не экспортируемые данные
Все, что включено в сам комплексный экран (например узел сети, группа узлов сети или любые другие данные) не экспортируются.
При импорте комплексного экрана, если любой из указанных элементов отсутствует, импорт будет завершен с ошибкой, например с такой:
13.6.5 Формат XML — определения в комплексном экране
Экспорт комплексного экрана содержит определения самого экрана и всех дополнительных элементов.
screenitem — индивидуальные элементы комплексного экрана, которые описаны ниже.
13.6.6 XML формат — элементы комплексного экрана
Возможные элементы комплексного экрана и их типы (ID).
Тип ресурса | Описание |
---|---|
0 | График |
1 | Простой график |
2 | Карта сети |
3 | Простой текст |
4 | Информация об узлах сети |
5 | Информация о триггерах |
6 | Информация о сервере |
7 | Часы |
8 | Комплексный экран |
9 | Обзор триггеров |
10 | Обзор данных |
11 | Ссылка URL |
12 | История действий |
13 | История событий |
14 | Состояние триггеров группы узлов сети |
15 | Состояние системы |
16 | Состояние триггеров узла сети |
13.6.7 Формат XML — Возможные тэги элементов
Жирный текст — обязательный тэг для всех элементов;
Нормальный текст — тэг доступный для всех элементов;
Наклонный текст — тэг опционально доступный для некоторых элементов (смотрите ниже для подробных сведений).
<resourcetype> — определение типа элемента, по таблице выше;
<resourceid> — идентифицирует ресурс, если применимо; зависит от типа ресурса;
<x> — размещение элемента по оси X в таблице комплексного экрана (ячейка левого верхнего угла);
<y> — размещение элемента по оси Y в таблице комплексного экрана (ячейка левого верхнего угла);
<colspan> — если больше чем 1, тогда это определяет количество объединенных колонок (направо);
<rowspan> — если больше чем 1, тогда это определяет количество объединенных строк (вниз);
<elements> — количество отображаемых строк, если применимо;
<valign> — выравнивание по вертикали: 0 — по середине, 1 — по верхнему краю, 2 — по нижнему краю;
<halign> — выравнивание по горизонтали: 0 — по центру, 1 — по левой стороне, 2 — по правой стороне;
<dynamic> — позволяет применять элемент для различных групп узлов сети и/или узлов сети, если применимо.
Если <resourceid> относится к имени объекта, то он может иметь вложенные тэги. Если данные экспортируются с системы, настроенной на распределенный мониторинг, тогда нода всегда будет идентифицироваться по имени:
Например, запись о Простой график <resourceid> с системы без распределенного мониторинга будет выглядеть примерно так:
В распределенном мониторинге, она будет:
Индивидуальные описания объектов перечисляются для каждого элемента.
13.6.8 Формат XML — индивидуальные детали каждого элемента комплексного экрана, A-Z
Каждый элемент должен иметь обязательные тэги, описанные в предыдущей секции и также может иметь тэги доступные для всех элементов. Если дополнительные тэги доступны для специфичного элемента, они будут отражены здесь.
В статье описана настройка мониторинга r_keeper_7 через систему Zabbix. Мониторинг позволяет отслеживать метрики и уведомлять о превышения критических значений показателей.
Система мониторинга состоит из 2 частей:
Агенты необходимо установить на каждый компьютер, на котором хотите что-либо мониторить.
Минимальная совместимая версия r_keeper_7 — 7.06.04.
Определения и сокращения
- Триггер — настраиваемая реакция системы на событие
- Хост — объект мониторинга
Схема работы
Возможности системы
В данный момент можно мониторить:
- Версии модулей системы
- Тип модулей системы. Может иметь значения:
- Сервер справочников
- Сервер отчетов
- Станция обслуживания
В статье описана базовая настройка взаимодействия r_keeper_7 с Zabbix. Т.е. корректные настройки R-Keeper 7 и Zabbix должны открыть канал передачи метрик
Планируемые обновления
В будущем планируется создать новые триггеры и метрики. Триггеры будут реагировать на критические значения показателей, присылая уведомления.
- Число файлов в очереди выгрузки в БД SQL стало больше 10
- Число файлов в очереди на отправку на сервер уровнем выше стало больше 10
- Количество ошибок при выгрузке данных в БД SQL стало больше 0
- Метрики по сборку данных смен / онлайн данных
- Метрики по процессам синхронизации справочников
- Метрики по бизнес операциям (среднее время чека / работа систем лояльности и т. д.)
- Метрики по мониторингу доступности компонентов (основной / резервный принтеры)
Настройка Zabbix
Дальше по тексту подразумевается, что сервер уже установлен и работает.
Установка агента
Запустите файл установки агента и следуйте указаниям. Согласитесь с лицензионным соглашением.
Укажите IP-адрес компьютера, на который устанавливаете агент в поле Host name. Укажите адрес Zabbix-сервера в поле Zabbix server и порт, который он слушает. Рекомендуем поставить галочку Add agent location to the PATH, чтобы удобнее было проверять работу агента через консоль.
Выберите путь и компоненты установки, нажмите Next и Install.
В результате агент установится и будет отсылать данные на сервер.
Настройка r_keeper 7
Для настройки мониторинга, необходимо настроить INI-файлы r_keeper 7. В каждом желаемом модуле отдельно.
Откройте INI-файл нужного сервера и добавьте в него записи:
Добавьте эти настройки в каждый требуемый сервер. Примеры использования:
1. Сервер справочников
2. Сервер отчетов
3. Кассовый сервер
4. Кассовая станция
Если требуется запустить службу на нестандартном порту, то в ini-файлах к IP-адресу добавьте порт с ключом «-p». Например:
Сохраните INI-файлы и перезапустите серверы.
Настройка Zabbix
Импорт шаблона
Скачайте файл шаблона по ссылке или из приложенных файлов.
Зайдите в систему.
Перейдите в раздел Configuration > Templates и нажмите в правом углу кнопку Import. В списке шаблонов появится Template App R-Keeper 7.
Выберите загруженный файл и снова нажмите кнопку Import.
Рекомендуем удалить ненужные шаблоны. Для этого отметьте их галочками и нажмите кнопку Delete внизу.
Создание хостов
Чтобы создать хост, необходимо сначала создать группу. Для создания перейдите в Configuration > Host Groups и нажмите кнопку Create host group в правом углу .
Укажите название новой группы и нажмите AddТеперь создайте сами хосты.
Перейдите в Configuration > Host и нажмите Create host- Host name — имя хоста. Разрешена только латиница без пробелов. Обязательно должно совпадать с именем, указанным в INI-файле сервера.
- Visible name — отображаемое имя. Может содержать пробелы и русский язык
- Groups — группа хостов
- Agent interfaces — адрес Zabbix-агента. Укажите здесь IP и порт с r_keeper_7, который вы хотите мониторить
- Остальные поля заполнять не нужно.
Перейдите на вкладку Templates, нажмите Add и выберите в списке шаблон Template App R-Keeper 7, установленный ранее. Это действие можно сделать позже в массовом порядке.
Хост появится в списке. Повторите действия для всех нужных хостов.
Убедитесь, что для каждого хоста выбран правильный шаблон, иначе данные отображаться не будут.
На этом настройка завершена, можно переходить к наблюдению.
Мониторинг
Перейдите в раздел Monitoring > Latest data. Укажите группу в поле Host groups и нажмите Apply. В списке ниже появятся данные мониторинга. В данный момент доступна только передача версий. В будуем количество метрик будет увеличено.
Если нет данных в столбцах Last check и Last value, то значит, данные не приходят.
Решение проблем
Для проверки передачи данных на сервер Zabbix следует использовать ручной запуск консольной утилиты zabbix_sender.exe, которая устанавливается вместе с агентом. Утилита отправляет заданные данные на сервер и вы можете их увидеть в мониторинге.
Откройте командную строку и запустите утилиту zabbix_sender:В случае успешной передачи появится надпись processed: 1; failed: 0. В случае ошибок будет наоборот.
И отправленное значение метрики появится на странице мониторинга.
Описание метрик
- rk7.app.version: версия
- Версия компонента, например:
- 7.6.4.212
- 7.6.5.113
- Тип компонента, например:
- Сервер справочников ()
- Станция обслуживания (POS) ()
- Сетевое имя компонента в инфраструктуре r_keeper_7, например:
- OA-02-MIDS-001
- OA-02-CASH-001
Современный человек стремится автоматизировать как можно больше сфер своей личной и профессиональной жизни. Ранее в нашем блоге мы уже рассмотрели возможность автоматизированного сбора данных со счётчиков расхода воды в заданный период времени. В этой статье мы рассмотрим ещё один вариант автоматизации – отправку ежемесячного отчёта о данных расхода воды при помощи интеграции устройства мониторинга компании NetPing с системой мониторинга Zabbix .
В отчёте необходимо отразить следующую информацию:
- дата отправки отчёта;
- информация о счётчике;
- итоговый расход воды/электроэнергии за последний месяц;
- показания на начало периода;
- показания на конец периода;
- итоговая сумма оплаты в рублях по тарифу
Требуемое оборудование и программное обеспечение
Для реализации отправки ежемесячных отчётов нам потребуется следующий комплект оборудования:
- Устройство удалённого мониторинга NetPing IO v2 или UniPing v3 – 1 шт.;
- Счётчики расхода воды с импульсным выходом – 2 шт.;
- ПК или сервер для сбора и хранения информации с установленной системой мониторинга Zabbix – 1 шт.;
- Локальная/глобальная сеть передачи данных – 1 шт.
Считаем, что устройство мониторинга NetPing IO v2 настроено на работу в вашей локальной сети. Подробнее ознакомиться с настройками NetPing IO v2 можно в документации. Счётчики расхода воды с импульсным выходом подключены к соответствующим линиям ввода-вывода устройства NetPing IO v2 и настроены в соответствии с рекомендациями этой статьи. Также считаем, что система мониторинга Zabbix настроена на работу с устройством мониторинга NetPing IO v2 и счётчиками расхода воды с импульсным выходом (подробнее здесь). В этом примере мы используем Zabbix версии 3.4.8.
Настройка устройства мониторинга NetPing IO v2
Для большей информативности отчётов, нужно указать памятки IO линиям устройства NetPing IO v2, к которым подключены счётчики расхода воды с импульсным выходом. Для этого переходим на страницу «Ввод-вывод» через навигационное меню под шапкой web-интерфейс а устройства мониторинга NetPing IO v2 и заполняем параметр «Памятка» для IO линии 1 и IO линии 2. К сожалению, Zabbix не распознает кириллицу, переданную по протоколу SNMP, поэтому памятки нужно указать латиницей. Настройки остальных параметров IO линий подробно рассматриваются здесь.
Настройка системы мониторинга Zabbix для отправки e-mail отчётов.
Далее переходим в web-интерфейс системы мониторинга Zabbix. Следуя этой статье, мы добавили по два новых элемента данных для каждого из счётчиков – для получения текущих показаний расхода воды от счётчика и вычисляемые элементы данных, которые определяют расход воды за месяц:
Создадим ещё два вычисляемых элемента данных: один для счётчика холодной воды, второй для счётчика горячей, которые будут вычислять стоимость расхода воды за месяц. Переходим на страницу «Configuration → Hosts →Items»:
Нажимаем кнопку «Create Item»:
Заполняем поля в открывшейся форме, как в нашем примере:
где:
Name – название элемента данных в Zabbix. В нашем примере «Price_cold» для счётчика холодной воды и «Price_hot» для счётчика горячей воды;
Type – параметр, определяющий метод опроса элемента данных;
Ключ – уникальное имя ключа элемента данных в пределах одного узла. В нашем примере «1price» для счётчика холодной воды и «2price» для счётчика горячей воды;
Formula – арифметическое выражение для расчёта необходимых показаний на основе других элементов данных.В нашем примере мы умножаем расход воды за месяц на стоимость одного кубометра по тарифам ЖКХ. Для счётчика холодной воды последнее значение элемента данных «1month» умножаем на 33,03 руб. Для счётчика горячей воды последнее значение элемента данных «2month» умножаем на 116,86 руб (тарифы условны). Нажимаем кнопку «Add» и повторяем создание элемента данных для второго счётчика.
Далее нам необходимо настроить ежемесячную отправку отчёта на e-mail. Переходим на страницу « Administration → Media Types». Проверьте, что способ оповещения «Email» активен. Если требуется, активируйте его и произведите настройку в соответствии с документацией.
Затем переходим к настройкам пользователя Admin «Administration → Users» и добавляем новый способ оповещения на вкладке «Media». Нажи маем ссылку «Add» и в появившемся pop-up окне «Media» прописываем параметры, как в нашем примере:
где:
Type – параметр для выбора способов оповещения, созданных ранее в системе мониторинга Zabbix ( « Administration → Media Types»). В нашем случае выбираем из списка тип оповещения « Email »;
Send to – адрес ящика , на который будут отправляться e — mail отчёты;
When active – время срабатывания данного оповещения. Настройку можно оставить по умолчанию;
Use if severity – важность триггера. Чек-боксы определяют, при какой важности триггера будет срабатывать данное оповещение. В примере установлены все чек-боксы для лучшей наглядности данного параметра.
Enabled – параметр для включения и отключения данного оповещения.Сохраняем измен ения нажатием кнопок «Add» и «Update».
Далее переходим к созданию действия, при выполнении которого бу дут отправляться наши e — mail отчёты. В этой статье мы рассмотрим отправку e — mail отчёта с показаниями счётчиков 1 раз в месяц по 20 числам. Сначала создадим триггер, при срабатывании которого будет отправляться ежемесячный отчёт. Переходим на страницу «Configuration → Hosts →Triggers» и нажимаем кнопку « Create trigger »:
Заполняем поля в открывшейся форме, как на скриншоте:
где:
Name – название триггера. В нашем примере « Monthly report cold water » для счётчика холодной воды и «Mo n thly report hot water» для счётчика горячей воды;
Severity – выбор требуемой важности триггера. Выбираем уровень важности «Information»;
Expression – логическое выражение, при истинности которого срабатывает триггер.Для настройки логического выражения нажимаем кнопку «Add» (1) и заполняем поля в открывшейся форме:
где:
Item – выбираем элемент данных, который соответствует требуемому счётчику. В нашем примере « NetPing IO v 2: Water meter 1 Cold Water Supply » для счётчика холодной воды и «NetPing IO v2: Water meter 2 Hot Water Supply» для счётчика горячей воды;
Function – выбираем из выпадающего списка « Day of month is = N »;
N – указываем требуемый день месяца. В нашем примере 20.Далее нажимаем кнопку «Insert». Остальные параметры можно оставить по умолчанию. Сохраняем измен ения нажатием кнопки «Add» (2). Повторяем создание триггера для второго счётчика расхода воды.
Затем переходим в раздел « C onfiguration → Actions» и нажимаем кнопку «Create Action»:
В открывшемся окне на вкладке «Action» заполняем поля как в нашем примере. Здесь нам необходимо отсортировать триггеры, при срабатывании которых будут отправляться e-mail отчёты:
где:
Name – уникальное имя действия. В нашем примере « Monthly report cold water » для счётчика холодной воды и «Mo n thly report hot water» для счётчика горячей воды ;
Conditions – условия, при которых будет срабатывать действие. В нашем примере имена триггеров, при срабатывании которых отправляются e — mail отчёты, « NetPing IO v 2: Monthly report cold water » для счётчика холодной воды и «NetPing IO v2: Mo n thly report hot water» для счётчика горячей воды ;
New condition – поле для создания нового условия. Добавление правил подтверждается нажатием на ссылку «Add» в поле «New condition»;
Enabled – параметр для включения и отключения данного действия.Затем переходим на вкладку «Operations» и прописываем текст e — mail отчёта , который будет отправлен при срабатывании триггера, описанного на вкладке «Action»:
В поле «Operations» нажимаем ссылку «New» и заполняем развернувшуюся форму описания действия как в нашем примере. Добавляем пользователя «Admin» в поле «Sen d to Users». В поле «Send only to» выбираем из списка тип уведомления « Email ». Подтверждаем изменения нажатием ссылки «Add» (1):
Подтверждаем создание нового действия нажатием кнопки «Add» (2). Повторяем создание триггера для второго счётчика расхода воды.
Теперь по 20 числам месяца администратор системы будет получать e — mail отчёты о месячном расходе и стоимости воды :
Таким образом, мы автоматизировали не только учёт данных о расходе воды, но и отправку отчёта с билингом.
Читайте также:
- Отрезки не компланарны в автокаде что делать
- Программа коды ошибок обд 2
- Социограмма мишень как построить в ворде
- Необходимые программы для виндовс 10 64 бит на русском
- Программа для сканирования для mf4660pl
- Версия компонента, например: