# Шаблоны конфигурации потоков

Для потоков данных доступны предустановленные шаблоны конфигурации:

Название Назначение Примечание
Без шаблона Получение первичных событий JSON без дальнейшей обработки синтетическими триггерами (push) Есть возможность добавления обработчиков своих и предустановленных.
AnyStream default Получение первичных событий JSON с дальнейшей обработкой синтетическими триггерами (push) Есть возможность добавления обработчиков своих и предустановленных.
Zabbix default Получение алертов из Zabbix (pull) Проверена совместимость с Zabbix версий 2.4+.
SCOM default Интеграция с Microsoft System Center Operations Manager (pull) Проверена совместимость с SCOM v.1806-1809.
Prometheus default Получение событий из Prometheus (push) Получение данных через публичный API monq Collector.
ntopng default Получение событий из ntopng (push) Получение данных через публичный API monq Collector. Версии 4.0+
Nagios default Получение событий из Nagios XI (pull) Проверена совместимость с Nagios 4.3.x-4.4.x
vCenter default Получение данных об изменениях топологии (pull) Проверена совместимость с vCenter 6.7

# Конфигурация Без шаблона

Шаблон конфигурации "Без шаблона" используется подключения Информационных систем, шаблон для которых отсутствует в monq.

Принцип передачи событий основан на авторизованном POST-запросе к Публичному API monq используя API-ключ.

События, принятые через Поток данных "Без шаблона", не направляются на обработку в префильтр (условие) "Синтетических триггеров".

Шаблон конфигурации "Без шаблона" доступен пользователю для построения собственных интеграций путем написания сценариев Заданий и правил Обработчиков, а также возможностью выбора Заданий и Обработчиков из предложенного списка.

Если события требуется обрабатывать правилами Синтетических триггеров - используйте Шаблон конфигурации Потока данных AnyStream default.

# Задания

Предустановленные задания у данного шаблона конфигурации отсутствуют. Пользователю доступно добавление новых заданий.

# Обработчики

Предустановленные обработчики у данного шаблона конфигурации отсутствуют.
Пользователю доступно добавление новых обработчиков.

# Конфигурация AnyStream default

Шаблон конфигурации "AnyStream default" используется подключения Информационных систем, шаблон для которых отсутствует в monq.

Принцип передачи событий основан на авторизованном POST-запросе к Публичному API monq используя API-ключ.

События, принятые через Поток данных "AnyStream default", направляются на обработку в префильтр (условие) "Синтетических триггеров".

Шаблон конфигурации "AnyStream default" доступен пользователю для построения собственных интеграций путем написания сценариев Заданий и правил Обработчиков, а также возможностью выбора Заданий и Обработчиков из предложенного списка.

Если события не требуется обрабатывать правилами Синтетических триггеров - используйте Шаблон конфигурации Потока данных Без шаблона.

# Задания

Предустановленные задания у данного шаблона конфигурации отсутствуют. Пользователю доступно добавление новых заданий.

# Обработчики

В шаблоне "AnyStream default" доступен предустановленный обработчик - Routing for Any stream, который проставляет метку postRouting:cl.stream-ready-event.new для дальнейшей маршрутизации события.

Пользователю доступно добавление новых обработчиков к имеющемуся.

# Конфигурация Zabbix default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой мониторинга Zabbix

# Задания

  • "Zabbix - Version Check" - получение актуальной версии подключенного сервера Zabbix
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 5 мин
  • "Zabbix - Api Connection Check" - проверка состояния соединения с API Zabbix
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 30 сек
  • "Zabbix - Events Data Flow" - получение данных из Zabbix
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 10 сек

Пользователю доступно добавление новых заданий к предустановленным.

# Обработчики

В шаблоне "Zabbix default" доступен предустановленный обработчик - Routing for Zabbix stream, который проставляет:

  • Метку type:Zabbix.
  • Метку postRouting:cl.stream-ready-event.zabbix.new для дальнейшей маршрутизации события.
labels_add('type', 'Zabbix')
labels_add('postRoutings',{'cl.stream-ready-event.zabbix.new'})
next_step(source)

Пользователю доступно добавление новых обработчиков к имеющемуся.

# Конфигурация SCOM default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой мониторинга SCOM

# Задания

  • "Scom - Events Data Flow" - получение данных из SCOM
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 10 сек
  • "Scom - Database Connection Check" - проверка соединения с БД SCOM
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 30 сек

Пользователю доступно добавление новых заданий к предустановленным.

# Обработчики

В шаблоне "SCOM default" доступен предустановленный обработчик - Routing for Scom stream, который проставляет:

  • Метку type:SCOM.
  • Метку postRouting:cl.stream-ready-event.new для дальнейшей маршрутизации события.
    Пользователю доступно добавление новых обработчиков к имеющемуся.
labels_add('type', 'SCOM')
labels_add('postRoutings',{'cl.stream-ready-event.new'})
next_step(source)

# Конфигурация Prometheus default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой мониторинга Prometheus - AlertsManager

# Задания

Предустановленные задания у данного шаблона конфигурации отсутствуют. Пользователю доступно добавление новых заданий.

# Обработчики

В шаблоне конфигурации "Prometheus default" доступны обработчики:

  • "Parser for Prometheus stream" - парсер входящего потока в удобный для monq формат.

    function is_array(t)
       local i = 0
       for _ in pairs(t) do
          i = i + 1
          if t[i] == nil then return false end
       end
       return true
    end
    function convert_date_time(date_string)
       local pattern = "(%d+)%-(%d+)%-(%d+)(%a)(%d+)%:(%d+)%:([%d%.]+)([Z%p])(%d*)%:?(%d*)";
       local xyear, xmonth, xday, xdelimit, xhour, xminute, xseconds, xoffset, xoffsethour, xoffsetmin
       xyear, xmonth, xday, xdelimit, xhour, xminute, xseconds, xoffset, xoffsethour, xoffsetmin = string.match(date_string,pattern)
       return string.format("%s-%s-%s%s%s:%s:%s%s", xyear, xmonth, xday, xdelimit, xhour, xminute, string.sub(xseconds, 1, 8), xoffset)
    end
    function alerts_parse(result_alerts, source_json)
       for key, alert in pairs(source_json.alerts) do 
          alert["startsAt"]=convert_date_time(alert["startsAt"])
          alert["endsAt"]=convert_date_time(alert["endsAt"])
          result_alerts[#result_alerts+1]=alert
       end   
    end 
    local sources_json = json.decode(source)
    result_alerts = {};
    if (is_array(sources_json)) then
       for key, source_json in pairs(sources_json) do 
          alerts_parse(result_alerts, source_json)
       end
    else
       alerts_parse(result_alerts, sources_json)
    end
    next_step(json.encode(result_alerts))
    
  • "Routing for Prometheus stream" - установка дальнейшей маршрутизации потока, проставлением меток.

    labels_add('type', 'Prometheus')
    labels_add('postRoutings',{'cl.stream-ready-event.new'})
    next_step(json.encode(source))
    

# Конфигурация ntopng default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой мониторинга ntopng

# Задания

Предустановленные задания у данного шаблона конфигурации отсутствуют. Пользователю доступно добавление новых заданий.

# Обработчики

В шаблоне "ntopng default" доступен предустановленный обработчик - Routing for Ntop stream, который проставляет:

  • Метку type:Ntop.
  • Метку postRouting:cl.stream-ready-event.new для дальнейшей маршрутизации события.
    Пользователю доступно добавление новых обработчиков к имеющемуся.
labels_add('type', 'Ntop')
labels_add('postRoutings',{'cl.stream-ready-event.new'})
next_step(source)

# Конфигурация Nagios default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой мониторинга Nagios XI

# Задания

  • "Nagios - Events Data Flow" - получение данных из Nagios XI
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 10 сек
  • "Nagios - Api Connection Check" - проверка соединения с БД Nagios
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 30 сек

Пользователю доступно добавление новых заданий к предустановленным.

# Обработчики

В шаблоне "Nagios default" доступен предустановленный обработчик - Routing for Nagios stream, который проставляет:

  • Метку type:Nagios.
  • Метку postRouting:cl.stream-ready-event.new для дальнейшей маршрутизации события.
    Пользователю доступно добавление новых обработчиков к имеющемуся.

# Конфигурация vCenter default

Шаблон конфигурации предназначен для интеграции "monq Collector" с системой управления виртуализацией VMWare vCenter

# Задания

  • "vCenter - TopologySync" - обеспечивает передачу данных о состоянии всей топологии vCenter, доступной пользователю
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 24 часа
  • "vCenter - EventsDataFlow" - обеспечивает передачу событий об изменении состава топологии в vCenter
    • Агент - SharedAgents - системный агент по умолчанию, доступен для изменения на внешние агенты
    • Интервал запуска по умолчанию - 30 сек

Пользователю доступно добавление новых заданий к предустановленным.

# Обработчики

В шаблоне "vCenter default" доступен предустановленный обработчик - Routing for vCenter stream, который проставляет:

  • Метку type:vcenter.
  • Метку postRouting:cl.stream-ready-event.new для дальнейшей маршрутизации события.
    Пользователю доступно добавление новых обработчиков к имеющемуся.