Потоки данных
Данное руководство описывает способы подключения различных источников данных для сбора событий (логов) и метрик в Monq.
В качестве источника данных может выступать любая информационная система, имеющая точки присоединения в виде API, или же способная передавать данные посредством Webhook.
Для быстрого доступа к интересующему вас функционалу воспользуйтесь навигацией:
Добавление потока данных
Для создания нового потока данных выполните следующие действия:
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Нажмите кнопку Добавить поток в верхнем правом углу.
- Заполните поля:
- Владелец - Рабочая группа, которой принадлежит поток данных.
- Шаблон конфигурации - выберите необходимый шаблон конфигурации (Доступные шаблоны).
- Название (уникально в рамках Рабочей группы).
- Описание (необязательно).
- Импорт - экспортированный в
base64
формате код (подробнее про экспорт Потоков данных)
- Нажмите кнопку Создать - откроется страница настройки, добавленного потока данных.
- На вкладке Настройки потока данных заполните параметры конфигурации подключаемого источника согласно выбранного шаблона конфигурации.
⚠️ Поток не будет запущен без заполнения обязательных параметров конфигурации выбранного шаблона.
- На вкладке Доступ при необходимости задайте дополнительные разрешения для других рабочих групп на Просмотр событий или Редактирование конфигурации данного потока данных.
Дальнейшая настройка потока данных зависит от выбранного вами Шаблона конфигурации потока данных и требований источника данных.
Перейдите в раздел Интеграции для ознакомления с примерами конфигурации потоков данных под различные источники.
Запуск, остановка и удаление потока данных
Запуск/остановка потока данных
- Перейдите в раздел Сбор данных ETL - Потоки данных через основное меню системы
- Найдите необходимый поток данных
- Воспользуйтесь вспомогательным меню ︙ для запуска/остановки соответствующего потока данных
Запустить или остановить поток данных, также, можно со страницы настроек этого потока:
- Перейдите на страницу настройки потока.
- В правом верхнем углу нажмите Запустить/Остановить.
⚠️ При запуске потока происходит проверка заполнения полей блока Параметры конфигурации потока, если такие имеются в выбранном шаблоне.
С пустыми значениями параметров поток запущен не будет.
Настройка потока данных
- Откройте вкладку Настройки необходимого потока данных.
- На данной вкладке вы можете изменить:
- Название
- Владельца
- Описание
- Параметры конфигурации
- Адрес ИС
- Недоступны для изменения:
- API-ключ
- Шаблон конфигурации можно изменить на вкладке Конфигурация.
- Для сохранения изменений нажмите кнопку "Сохранить"
Кнопка "Сохранить" может быть заблокирована для нажатия в двух случаях:
- Если пользователь ничего не изменил на вкладке "Настройки".
- После изменения параметров есть ошибки валидации полей в блоке "Общие настройки" на вкладке "Настройки".
Хранение данных
В случае необходимости экономии дискового пространства, укажите время хранения событий для выбранного потока данных.
Время хранения событий задается в днях от 1-го дня до бесконечности.
По умолчанию для создаваемых потоков время хранения установлено в "Бесконечность".
Если указано некорректное значение - устанавливается значение 365 дней.
При включении данной настройки для потоков, которые получают события с даты не вошедшей в интервал хранения, пользователь получает сообщение с возможностью подтвердить или отменить действие.
События с [дата первого события в потоке] по [дата первого события, которое не попало в интервал хранения] будут удалены из системы без возможности их восстановления.
События потока данных, подлежащие удалению будут удалены в течении часа.
Для включения автоматического удаления данных старше указанного количества дней:
- Перейдите на вкладку "Настройки" необходимого потока данных
- В блоке "Хранение данных" выберите из списка параметр "в течении".
- Укажите количество дней, сколько хранить события.
- Нажмите "Сохранить".
Конфигурация потока
На вкладке "Конфигурация" потока данных, пользователь может настроить собственные задания по сбору данных и правила предобработки собираемых данных.
Задания
В блоке Задания под элементом выбора шаблона представлен список предустановленных заданий для текущего шаблона.
Для шаблонов: Ntopng, Prometheus, Default - предустановленные задания отсутствуют.
⚠️ Запуск сценария Задания выполняется на агенте Monq.
Создание задания
К предустановленным заданиям пользователям доступно добавление собственных заданий.
Чтобы добавить новое задание, выполните следующие действия:
Нажмите кнопку "Добавить задание".
Выберите "Новое задание" или выберите задание из списка.
Для написания сценария нового задания перейдите в окно редактирования кода справа (язык YAML).
Напишите сценарий Задания.
Выберите метку агента, на котором будет производится запуск данного задания.
⚠️ Метка
SharedAgents
используется для выполнения заданий на системном агенте Monq (микросервисpl-monq-agent
).⚠️ Обратите внимание, что запуск сценариев, в которых присутствует команда
run
запрещены на системном агенте внутренней политикой безопасности.Установите периодичность запуска задания, используя формат CRON.
По умолчанию, при добавлении задания периодический запуск выключен.
Нажмите кнопку "Сохранить".
Редактирование задания
Редактировать можно только собственные задания.
Встроенные задания доступны только для просмотра.
Для редактирования своего задания:
- Наведите курсор мыши на задание и нажмите Редактор.
- В правом верхнем углу, в поле Версия скрипта выберите Черновик для создания новой версии сценария.
- Внесите необходимые правки в код сценария, используя окно редактора кода (YAML).
- Нажмите кнопку Сделать исполняемой.
Ручной запуск
Чтобы произвести запуск (отладку) сценария Задания воспользуйтесь кнопкой Ручной запуск в настройке расписания Задания.
Выключение задания
Отключить выполнение задание можно установив значение Запуск - Нет.
Удаление задания
Для удаления ранее добавленного задания, нажмите на значок корзины напротив названия задания - объект будет удален. Действие необратимое и не требует дополнительного подтверждения.
⚠️ Удалить можно только собственные задания. Задания определенные шаблоном конфигурации удалить нельзя.
Обработчики
Пользователю Monq доступно написание собственных обработчиков для входящих потоков данных.
В качестве обработчиков потоков выступают сценарии Автоматизации, задачей которых является:
- преобразование события в модель коллектора
- дополнительные преобразования и модификация события
- обогащение события дополнительными меткам
- отправка события в очередь с нужным ключом
Чтобы начать работу с обработчиками - перейдите на вкладку Конфигурация на странице выбранного потока данных.
При необходимости измените Шаблон конфигурации - выбрав нужный из списка доступных шаблонов.
⚠️ При смене Шаблона конфигурации - обработчик сбрасывается до состояния "по умолчанию".
Начиная с версии Monq 6.10.0 конфигурация обработчиков производится в новом сервисе Автоматизации при помощи визуального движка программирования.
Редактирование обработчиков
Для редактирования обработчика нажмите кнопку "Перейти" напротив названия обработчика, чтобы перейти к сценарию конфигурации обработчика потока данных.
⚠️ Переход к редактированию сценария обработчика возможен только со страницы конфигурации Потока данных.
Пример сценария для "Шаблона конфигурации" с типом vCenter:
Подробная информация по работе со сценариями визуального движка программирования содержится в разделе Автоматизация.
Также дополнительная информация по использованию обработчиков в Потоках данных находится в разделе документации Интеграции - Обработчики
Активация/деактивация обработчика
Активация или деактивация сценария обработчика синхронизирована с состоянием Потока данных.
Деактивировать сценарий можно отключив Поток данных. Активация сценария производится аналогично.
Удаление обработчиков
Удалить обработчик из потока данных нельзя. Для этого предназначена функция сброса состояния обработчика к состоянию по умолчанию, в котором выполняются только служебные функции маршрутизации события.
Пример сценария для обработки события по умолчанию:
Self-мониторинг
Мониторинг поступающих событий
Пользователю доступна функция собственного контроля состояния потоков данных.
Для включения проверки наличия первичных событий в потоке, выполните следующие действия:
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Найдите необходимый поток.
- Перейдите на вкладку "Настройки" потока данных.
- В блоке Мониторинг потока активируйте переключатель "Отправлять первичное событие с ошибкой при отсутствии событий в Потоке более N часов".
По умолчанию для всех потоков данных функция выключена.
- Задайте интервал проверки событий в соответствующем поле в часах. Доступны для ввода только целые значения.
- Сохраните параметры потока данных.
Проверка наличия первичных событий в потоке работает следующим образом:
- Запускается с интервалом, заданным пользователем
- Проверяется наличие первичных событий по потоку в этом интервале времени, без учета событий самомониторинга и событий отправленных по ошибкам потока.
- При наличии первичных событий по потоку не выполняется никаких действий.
- При отсутствии первичных событий по потоку генерируется и отправляется в поток служебное первичное событие:
{
"source": {
"monqStreamControl": {
"statusValue": "Warning",
"alertMessage": "Events don't arrive on the [Название потока] stream for more than [Период запуска задания]",
"alertType": "Stream",
"alertSourceName": "Self-monitoring"
}
}
}
Мониторинг заданий и обработчиков
При возникновении ошибок в работе обработчиков или заданий потока данных возможна отправка соответствующих событий в этот поток данных.
Обратите внимание, что генерация событий об ошибке непосредственно связана с интервалом запуска Заданий соответствующего Потока данных.
Например, если для Задания установлен интервал запуска 5 секунд, то при невозможности выполнить данное задание - каждые 5 секунд будет генерироваться событие об ошибке и отправляться в соответсвующий Поток данных.
Для включения данной функции:
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Найдите необходимый поток.
- Перейдите на вкладку "Настройки" потока данных.
- В блоке Мониторинг потока активируйте переключатель "Отправлять первичные события с ошибками Потока".
По умолчанию для всех потоков данных функция выключена.
- Сохраните параметры потока данных.
Пример события, которое будет отправлено в поток:
{
"source": {
"monqStreamControl": {
"statusValue": "Error",
"alertMessage": "Текст ошибки",
"alertType": "AgentTask",
"alertSourceName": "Название задания / обработчика"
}
}
}
Возможные значения поля "alertType"
:
- "AgentTask" - ошибка в задании агента.
- "StreamHandler" - ошибка в обработчике потока.
Операции с потоками данных
Фильтрация потоков данных
Фильтрация потоков данных осуществляется по следующим параметрам потоков:
- Владелец
- Рабочая группа, которой принадлежит поток данных
- Состояние
- Активный
- Остановленный
- Статус
- ОК
- Неизвестно
- Ошибка
Настройки фильтра не сохраняются после перехода на другую страницу
Поиск потока данных
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- В левом верхнем углу в поле Поиск введите текст, поиск будет произведен по следующим параметрам:
- Название
- Описание
- ID
- Владелец
- Шаблон конфигурации
Действия с потоками
- Нажмите ︙ напротив необходимого Потока данных и выберите необходимое действие:
- Запустить/остановить поток
- Копировать ссылку на поток
- Копировать ID потока
- Копировать API-ключ
- Перейти к Первичным событиям данного потока (документация)
- Открыть внешнюю ИС (пункт доступен при заполненном поле Адрес ИС блока Общие настройки потока данных)
Сортировка списка потоков данных
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Нажмите на заголовок столбца:
- Название потока данных
- Статус
- Владелец
- Шаблон конфигурации
- Средний показатель объема данных
- Текущий показатель объема данных
- Каждое нажатие на заголовок выполняет:
- Сортировку по возрастанию
- Сортировку по убыванию
- Отключение сортировки по данному столбцу
Настройка доступа к потоку
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Найдите необходимый поток.
- Откройте вкладку Доступ потока данных.
- В поле Выбрать рабочие группы выберите Рабочие группы, которым необходимо предоставить доступ.
- Выберите Просмотр или Редактирование.
- Нажмите Выдать доступ - доступ предоставлен.
- При необходимости включите Доступ на просмотр всем рабочим группам, включая будущие для предоставления доступа на чтение всем РГ.
💡 Доступ на просмотр всем рабочим группам, включая будущие может предоставить только Администратор пространства
Статистика потока данных
На вкладке Статистика пользователям доступна информация о собираемых в потоке данных событиях (логах) и метриках.
Информация представлена в виде гистограмм со статистическими показателями.
Гистограмма по Событиям и логам
Гистограмма по Событиям и логам отображает объема данных, полученных через Поток данных, за выбранный промежуток времени со следующими показателями:
- Объем данных за выбранный период
- Средний объем данных за выбранный период = объем данных за период / на количество временных интервалов периода
- Максимальный объем данных за выбранный период = максимальному объему одного из временных интервалов периода
- Минимальный объем данных за выбранный период = минимальному объему одного из временных интервалов периода
Гистограмма по Метрикам
Гистограмма по Метрикам отображает количество Метрик, полученных через Поток данных за выбранный промежуток времени со следующими показателями:
- Количество за выбранный период
- Среднее количество за выбранный период = количество за период / на количество временных интервалов периода
- Максимальное количество за выбранный период = максимальному количеству одного из временных интервалов периода
- Минимальное количество за выбранный период = минимальному количеству одного из временных интервалов периода
Определение терминов
Статус потока данных
Внутренний показатель состояния потока. Может иметь следующие состояния:
- Ок - поток в работе, задания выполняются без ошибок
- Неизвестно - поток не содержит активных заданий
- Проблема - в одном из заданий потока возникла ошибка
Рассчитывается исходя из статусов выполнения заданий агента соответствующего потока. Проставляется по наихудшему значению статуса выполнения скрипта.
💡 Дополнительно к значению статуса отображается время его последнего расчета (время обновляется даже если статус не менялся).
Средний показатель объема данных
Среднеарифметический объем данных, поступивший по потоку данных за последние 30 дней (если период работы потока составляет меньше 30 дней, то за весь период работы потока).
Показатель объема данных за сутки
Суммарный объем данных, поступивший по потоку данных за текущие сутки.
Экспорт потока данных
Пользователи системы могут экспортировать настроенные потоки данных в base64
формат.
В экспортируемом коде потока данных, содержится следующая информация:
Вкладка "Настройки"
- Параметры конфигурации
- Все незащищенные параметры и их значения
- Все защищенные параметры без их значений
- Пользовательские параметры
- Все незащищенные параметры и их значения
- Все защищенные параметры без их значений
- Настройки хранения
- Настройки self-мониторинга
- Параметры конфигурации
Вкладка "Конфигурация"
- Задания потока данных
- Название задания
- Сценарий задания
- Метки агентов
- Настройки планировщика запуска
- Задания потока данных
Остальные параметры потока данных невключены в экспортируемые данные и требуют дополнительной настройки после импорта.
Чтобы экспортировать поток данных, находясь на странице списка всех потоков или в карточке выбранного потока, используя дополнительное меню, выберите - "Экспорт"
Удаление потока данных
- Перейдите в раздел Сбор данных - Потоки данных через основное меню.
- Найдите необходимый поток.
- Воспользуйтесь вспомогательным меню ︙ для удаления соответствующего потока данных.
Удалить поток данных также можно со страницы настроек потока:
- Найдите необходимый поток и перейдите на страницу настройки потока.
- В правом верхнем углу нажмите Удалить.