Как стать автором
Обновить
483.5
Yandex Cloud & Yandex Infrastructure
Строим публичное облако и инфраструктуру Яндекса

Выпустили low-code-инструмент бессерверной оркестрации — визуальный конструктор для Yandex Workflows

Время на прочтение4 мин
Количество просмотров3.7K

Оркестрация — распространённый паттерн для обработки событий в рамках событийно‑ориентированной архитектуры (EDA). Мы уже рассказывали, как реализовать оркестрацию с помощью декларативной yaml‑спецификации в Yandex Workflows на примере автоматизации сценария ухода в отпуск.

С появлением визуального конструктора в Yandex Workflows выстраивать процессы становится проще:

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

  • наглядность конструктора позволяет использовать его для презентации бизнес‑логики процесса нетехнической аудитории;

  • функции обработки ошибок и управления состоянием уже встроены в инструмент.

Что доступно в новом конструкторе

В интерфейсе конструктора рабочий процесс визуализируется в виде «кубиков», которые представлены блоками (или шагами) двух видов:

  • Функциональные — выполняют непосредственно действия и являются интеграциями с другими сервисами. Например, есть сторонние интеграции с сервисами Yandex Tracker, Yandex Cloud Postbox, Yandex Foundation Models и другими.

  • Управляющие (control flow) — логические операции, которые контролируют исполнение процесса и очерёдность / параллельность исполнения функциональных блоков. Например, Switch — условный переход между блоками, Foreach — для создания циклов, Fail и Success, которые выводят результат операции.

В интерфейсе конструктора Yandex Workflows мы работаем с тремя панелями: слева размещена инструментальная панель с типами блоков, которые пользователь перетаскивает на плейсхолдеры; в центре формируется схема процесса, где блоки автоматически соединяются стрелками; справа настраиваются параметры выбранных элементов.
В интерфейсе конструктора Yandex Workflows мы работаем с тремя панелями: слева размещена инструментальная панель с типами блоков, которые пользователь перетаскивает на плейсхолдеры; в центре формируется схема процесса, где блоки автоматически соединяются стрелками; справа настраиваются параметры выбранных элементов.

На примере выше видно, как создаётся сложный процесс с параллельными потоками — центральный блок Parallel разделяет работу на три направления: верхний с контейнерами и блоком Fail, средний с контейнерами, блоками Success и Switch, и нижний с HTTP‑вызовами и блоком Pass, а ветвления от блока Switch демонстрируют возможности условной логики.

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

Как это работает на примере разных сценариев 

Обработка тикетов в техподдержке. Служба технической поддержки использует Yandex Tracker для работы с обращениями клиентов: заводит тикеты по запросам, которые приходят по телефону, e‑mail, в чатах, приоритезирует тикеты по принятым в компании правилам, эскалирует инциденты на профильных инженеров, готовит ответы для отправки клиентам и отслеживает SLA.

Как будут выглядеть шаги для автоматизации обработки таких тикетов в Yandex Workflows.

  1. Извлечение данных из тикетов командой fetch_tickets в Yandex Tracker.

  2. Суммаризация содержимого тикетов с помощью YandexGPT в сервисе Foundation Models (summarize_texts).

  3. Создание отчёта (create_report).

  4. Разделение процесса на два параллельных потока с помощью блока Parallel:

    • в одном потоке результат записывается обратно в Yandex Tracker,

    • в другом потоке результат отправляется по электронной почте клиенту через Yandex Cloud Postbox.  

Как это выглядит в визуальном конструкторе.
Как это выглядит в визуальном конструкторе.

Передача дежурства. У нас есть очередь дежурств DUTY. К завершению очередной смены мы хотим убедиться, что сформирован отчёт для передачи следующей смене инженеров всей информации, которая может понадобиться. Рабочий процесс отрабатывает каждый duty_period со следующими действиями:

  1. Проверка текущих алертов в статусе WARN/CRIT в системе мониторинга.

  2. Создание тикета на новое дежурство.

  3. Формирование таблицы всех алертов с колонками «Текст», «Алерт», «Вердикт».

  4. Уведомление дежурного в чате и тикете (для простоты можно передать текущего дежурного прямо в input).

  5. Ожидание 10 минут (либо использование вебхука).

  6. Проверка заполнения таблицы вердиктами:

    • Если всё заполнено, статус тикета меняется на «Передано» или добавляется тег.

    • Если не заполнено, призываем дежурного снова.

  7. Если таблица не заполнена повторно, пользователю выводится ошибка.

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

  1. Сбор журналов из API приложений и отправка в Yandex Cloud Logging.

  2. Отгрузка логов в Yandex Data Streams.

  3. Сбор и батчинг логов с помощью Event Router и вызов воркфлоу.

  4. Воркфлоу перебирает каждую запись, обогащает её данными из разных источников, формирует метрику по формату мониторинга и отправляет её в Yandex Monitoring.

  5. В мониторинге настраиваются алерты на критические значения метрик.

  6. При наступлении критических событий мониторинг вызывает функцию и создаёт тикет в Yandex Tracker.

Сервис находится на стадии Preview и предоставляется бесплатно. На сервисы Serverless действует специальный тариф free tier: после исчерпания бесплатных лимитов начинает действовать стандартная тарификация.

Чтобы попробовать инструмент, отправьте заявку в консоли управления.

Теги:
Хабы:
Всего голосов 9: ↑8 и ↓1+7
Комментарии2

Другие новости

Информация

Сайт
yandex.ru
Дата регистрации
Численность
свыше 10 000 человек
Местоположение
Россия
Представитель
Вера Сомова