Перейти к основному содержимому
Версия: 7.9

Автоматизация

Новый функционал автоматизации, построенный на базе low-code движка визуального программирования и собственной системы запуска и выполнения сценариев позволяет пользователям создавать произвольные сценарии обработки событий при помощи визуальных блоков и установки связей между ними.

Термин "Low-Code" относится к методологии разработки программного обеспечения, которая стремится упростить процесс создания приложений, минимизируя необходимость вручную писать код.

С помощью такого подхода инженеры внедрения могут быстрее создавать сценарии, поскольку они могут сосредоточиться на логике и бизнес-процессах, а не на написании каждой детали кода. Это также позволяет "непрограммистам", таким как бизнес-аналитикам или инженерам мониторинга, участвовать в создании сценариев, упрощая процесс разработки и снижая зависимость от высококвалифицированных разработчиков.

Для построения Сценариев доступны как базовые Блоки системной библиотеки, так и локальные функции, написанные пользователем на скриптовом языке C# scripts.

Руководство по созданию первого сценария

Архитектура обработки сценария автоматизации​

Изображение

Общий принцип построения РСМ​

Изображение

Экран управления сценариями​

Изображение

На главной странице экрана Автоматизация представлен табличный список сценариев со следующей информацией:

  • Название сценария (содержит информацию о статусе и режиме отладки, если она включена)
  • Тип сценария
  • Владелец сценария (Рабочая группа)
  • Общесистемные тэги
  • Дата последних изменений
  • Дата последнего запуска

🔁 Порядок столбцов таблицы можно определить в удобном для себя формате.

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

На экране управления сценариями можно настроить параметрический фильтр для отображения только определенных сценариев.

Для фильтрации доступны следующие параметры:

  • Владелец - рабочая группа, которой принадлежит сценарий
  • Статус - активен/остановлен
  • Тип - тип сценария
  • Тэг - общесистемный тэг

Выберите необходимые условия фильтра - настройки фильтра применяются "на лету".

Тип сценария​

Тип сценария соответствует маршрутному узлу, по которому проходит событие на обработку.

В текущей версии в системе доступны, следующие маршрутные узлы (типы) для сценариев:

  • CMDBAutodiscovery - маршрутный узел обработки событий, связанных с построением ресурсно сервисной модели
  • SignalsProcessor - маршрутный узел обработки событий и логов из внешних источников
  • ThresholdsProcessor - маршрутный узел привязки порогов к конфигурационным единицам РСМ
  • BuildsProcessor - маршрутный узел обработки сборок автоматического тестирования
  • Stream Raw Events Processor - скрытый маршрутный узел препроцессора (обработчика) событий в потоке данных

Тэги сценария​

Для дополнительной организации и классификации сценариев, пользователям с правами редактирования в модуле Автоматизация, доступно добавление/удаление тэгов к сценариям.

Теги позволяют логически группировать сценарии. Например, вы можете использовать теги для организации сценариев по функциональности. Это облегчает поиск, фильтрацию и управление множеством сценариев.

Управление доступом к сценариям​

К сценариям автоматизации можно персонализировать доступ пользователей в рамках права - "Platform.Автоматизация" в настройках ролей "Рабочей группы".

Справка по пользовательским правам

Справка по настройке ролей в РГ

Доступно назначение следующих видов прав для Роли:

  • Запрещено

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

  • Редактирование

    Пользователь получает полные права на создание, редактирование и удаление сценариев.

  • Чтение

    • Разрешено

      • Просмотр сценариев и основной информации о них
      • Экспорт сценариев
      • Поиск по сценариям
      • Просмотр истории запусков сценариев
      • Просмотр исходного кода
      • Просмотр запланированных запусков
    • Запрещено

      • Активация/деактивация сценариев
      • Компиляция сценариев
      • Удаление сценариев
      • Добавление/удаление/редактирование объектов на холсте

По умолчанию для системных ролей Рабочих групп назначаются следующие права:

  • Менеджер - Редактирование
  • Пользователь - Чтение

Избранные сценарии​

Если среди множества сценариев вы хотите пометить сценарии "избранными" лично для себя, чтобы упростить свою навигацию по ним:

  1. Найдите свой сценарий
  2. Отметьте "звездочкой" сценарий для добавления в избранное Изображение

Конструктор сценариев​

Конструктор включает в себя возможность просматривать и редактировать сам сценарий, а также основную информацию о нем.

Изображение

Сценарий может находиться в состоянии активен или неактивен.

  • Активный сценарий - система запуска и выполнения сценариев привлекает его для обработки событий
  • Неактивный сценарий - система запуска и выполнения сценариев не привлекает его для обработки событий.

Сразу после создания, сценарию устанавливается режим Неактивен. Активировать сценарий можно из конструктора сценария или с экрана управления сценариями.

Редактирование сценария происходит способом "Drag'n''Drop" - перемещая блоки и связи между ними указателем курсора.

Для перемещения нескольких блоков одним движением - нажмите и удерживайте клавишу Ctrl, выделите необходимые блоки и не отпуская клавишу Ctrl перетащите их в нужное место сценария.

Для удаления нескольких блоков сразу - нажмите и удерживайте клавишу Ctrl, выделите необходимые блоки на холсте, отпустите клавишу Ctrl и нажмите клавишу Delete на клавиатуре, блоки будут удалены без дополнительного подтверждения.

Диспетчер объектов​

Диспетчер объектов

Пользователю доступен Диспетчер объектов, позволяющий работать с объявленными сущностями текущего сценария. Каждая объявленная локальная функция, переменная или структура в сценарии будет отображена в данном диспетчере.

Пользователь может перейти к настройкам данных сущностей (Инспектор объектов) сразу из диспетчера, без необходимости добавления их на граф.

В диспетчере объектов доступно создание новых сущностей сценария, а именно:

  • Локальные функции.
  • Локальные переменные.
  • Локальные структуры.

Для удобства навигации по объектам сценария в верхней части Диспетчера объектов находится форма поиска по названию объекта.

При добавлении, новым сущностям назначаются названия по умолчанию:

В случае повторения названий, к ним добавляется порядковый номер.

Изображение

Инспектор объектов​

Инспектор объектов

Изображение

Компиляция сценария​

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

💡 Компиляция сценария не является функцией его сохранения. Сохранение происходит после каждого изменения в сценарии.

Режим отладки​

Все типы сценариев, кроме сценариев предобработки событий в потоках данных можно перевести в режим отладки.

Сценарий, находящийся в данном режиме, позволяет автоматически записывать в журнал входящие и выходящие параметры Impure-функций, благодаря чему сильно упрощается процесс отладки.

Чтобы включить режим отладки необходимо перейти к выбранному сценарию и активировать его соответствующей кнопкой:

Изображение

После включения режима отладки, вся отладочная информация содержится в панели История запусков в подкате каждого запуска сценария.

Исходный код​

После компиляции сценария генерируется исходный код сценария на языке C#. Просмотреть сгенерированный код можно в нижней панели конструктора сценария - "Исходный код"

Изображение

⚠️ Редактировать сгенерированный исходный код сценария нельзя.

История запусков​

На вкладке "История запусков" отображается информация о запусках сценария, инициализированных получением первичного события или по расписанию планировщика.

По умолчанию загружается список запусков сценария со статусами:

  • CompileError - ошибка компиляции
  • Completed - устанавливается соответствующей функцией SetStatusCompleted в сценарии, по его успешному завершению
  • Debug - устанавливается соответствующей функцией SetStatusDebug в сценарии, при отладке
  • Error - ошибка в работе сценария
  • Failed - устанавливается соответствующей функцией SetStatusFailed в сценарии, при отладке

Дополнительно, можно включить в фильтр следующие статусы:

  • Executed - каждый запуск сценария
  • Launched - инициализация запуска сценария
  • Skipped - устанавливается соответствующей функцией SetStatusSkipped в сценарии, при отладке

Информация о новых запусках сценария на вкладке загружается автоматически по технологии WebSockets.

Настроенное представление в виде определенных статусов и временного промежутка сохраняются для каждого сценария в настройках пользователя.

Планировщик запуска сценариев​

В Monq пользователям доступен запуск сценариев в запланированное время или с определенной периодичностью.

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

Например. После получения события о восстановлении проблемы Сигнал можно закрывать не сразу, а через определенное время, если эта проблема не повторилась в течении 5 минут.

При этом запуск сценария может быть двух типов:

  • Разовый запуск сценария в определенное время
  • Ряд запусков сценария повторяющихся с определенной периодичностью

Просмотр активных расписаний​

Чтобы просмотреть запланированные запуски текущего сценария перейдите в раздел "Планировщик запусков" нижней панели текущего сценария

Изображение

В данном разделе отображается информация о текущих запланированных запусках данного сценария:

  • Время следующего запуска
  • Статус расписания
    • Enabled - расписание активно
    • Paused - запуск сценария по планировщику приостановлен
  • Описание расписания
  • Элементы управления расписаниями
    • Редактирование расписания
    • Остановка/запуск расписания
    • Удаление расписания

Ручное создание расписания​

Чтобы запланировать запуск сценария в определенное время или с определенной периодичностью:

  1. Перейдите в раздел "Планировщик запусков" нижней панели текущего сценария

  2. Нажмите кнопку "+ Запланировать запуск"

  3. Заполните форму создания расписания

    Изображение

    • Описание - текстовое, понятное пользователю описание запланированного запуска
    • Действие - событие в формате JSON, которое будет передано в сценарий при следующем запуске
    • Часовой пояс
    • Начало - дата и время первого запуска сценария
    • Повторения - возможность включить ряд запусков сценария

      Указывается в формате CRON

      Состоит из пяти полей разделённых пробелами: <Минута> <Час> <Число> <Месяц> <День недели>

    • Окончание - дата и время до которого будет происходить запуск сценария, если настроены повторения
  4. Нажмите кнопку "Запланировать запуск" - будет создано расписание запуска

Автоматическое создание расписания​

Автоматическое создание расписания подразумевает инициализацию последующего запуска сценария непосредственно из сценария.

Для этого предназначены соответствующая глобальная функция CreateSchedule - справка.

Импорт/экспорт сценария​

Пользователи могут делиться между собой готовыми конструкциями сценариев благодаря инструментам Экспорта и Импорта сценария.

При экспорте запускается механизм сериализации сценария в формат base64. По результату выполнения экспорта, пользователю будет предложено скопировать в буфер обмена код или скачать txt-файл с его содержимым.

image

Кроме стандартного создания сценария, пользователю доступна опция импорта, при выборе которой необходимо заполнить строку с содержимым в формате base64.

image

В процессе импорта система проверит соответствие версий задействованных модулей, и в случае успеха создаст сценарий со всеми необходимыми локальными функциями и структурами.

Клонирование сценария​

Для создания копии текущего сценария пользователям доступно клонирование сценариев Автоматизации. Клонирование сценариев доступно на экране списка доступных сценариев и в самом конструкторе сценария.

Чтобы клонировать сценарий:

  1. Откройте раздел Автоматизации.

  2. Найдите необходимый сценарий в списке.

  3. В контекстном меню необходимого сценария выберите Создать копию

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

  5. Нажмите Сохранить

image

Журнал изменений​

Начиная с версии Monq 7.9.0 все изменения в сценариях фиксируются и доступны пользователям для просмотра.

На экране управления всеми доступными сценариями или в любом отдельном сценарии, для просмотра истории изменений откройте через дополнительное меню Журнал изменений

Изображение

При необходимости записи журнала можно отфильтровать по дате и времени.