Skip to content

Задачи и шаги ​

Задача состоит из шагов. Каждый шаг делает одно действие: выполняет SQL-запрос, обращается к API, читает файл, запускает JavaScript и так далее. Шаг может использовать результаты других шагов и переменные задачи. Список типов есть в разделе Типы шагов.

Создание задачи ​

  1. Откройте панель Задачи и нажмите Создать задачу.
  2. Введите Название задачи.
  3. Нажмите Добавить шаг, выберите Тип шага, введите Название шага и заполните настройки шага.
  4. Так же добавьте остальные шаги и нажмите Сохранить.

Результат другого шага ​

У каждого шага есть постоянный идентификатор, который начинается с step_. Напишите ${step_id}, чтобы использовать данные этого шага: строки SQL-запроса, значение, которое вернул код JavaScript или MongoDB, тело ответа API или записи CSV- или JSON-файла.

Вводить идентификатор вручную не нужно. В редакторе шага нажмите на шаг в блоке Результаты шагов:, и его токен встанет на место курсора. Переменная из блока Переменные: вставляется так же, в виде ${variable_name}.

В SQL токен передаётся драйверу как параметр. В коде JavaScript и MongoDB он превращается в JSON-литерал, подробнее в разделе Шаги JavaScript. Токены внутри комментариев не обрабатываются.

Зависимости ​

Шаг, в котором есть ${step_id}, автоматически зависит от этого шага. В редакторе такие связи показаны строкой Из кода: под настройками шага.

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

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

Как выполняется задача ​

QueryLane запускает шаги по зависимостям, а не по порядку в списке. Шаги без незавершённых зависимостей стартуют одновременно, поэтому независимые запросы выполняются параллельно. Шаг начинается, когда завершены все его зависимости.

Если шаг завершился с ошибкой, задача останавливается, и зависящие от него шаги не выполняются. Шаг, выключенный кнопкой Отключить шаг, пропускается.

Запуск задачи целиком или частично ​

Нажмите Старт вверху страницы задачи, чтобы запустить её целиком. Запуск появится в разделе История выполнений под шагами, подробнее в разделе Запуски и артефакты.

Чтобы запустить часть задачи, нажмите на шаг в списке, чтобы раскрыть его, и выберите:

  • Запустить до шага выполняет шаг и все шаги, от которых он зависит.
  • Только этот шаг выполняет только его.
  • Запустить с шага выполняет шаг и все шаги, которые от него зависят.

Только этот шаг и Запустить с шага берут результаты предыдущих шагов из прошлого запуска. Если подходящего запуска нет, QueryLane сообщает Нужен совместимый предыдущий запуск. Запустите задачу целиком и повторите.

Те же кнопки есть в редакторе шага в блоке Debug-запуск. Они выполняют несохранённый черновик, так что изменение можно проверить до сохранения.

Страница задачи в режиме «Список» с раскрытым шагом и кнопками «Запустить до шага», «Только этот шаг» и «Запустить с шага»

Список и граф ​

У раздела Шаги выполнения два вида. Список показывает шаги по порядку с типом, зависимостями и кодом. Граф рисует шаги узлами, а зависимости стрелками. Нажмите на узел, чтобы увидеть подробности, затем Редактировать, чтобы открыть шаг, или Выполнить, чтобы запустить его вместе с шагами, от которых он зависит.

Вид «Граф» с параллельными ветками и панелью выбранного узла

Переменные ​

Переменные хранят значения, которые меняются от запуска к запуску, например начальную дату. В редакторе нажмите Добавить переменную в разделе Переменные задачи и заполните Имя, Тип и Значение:

  • Дата: дата или смещение от момента запуска, например -7d, +2w или now.
  • Число: целое или дробное число.
  • Строка: текст.

В шаге переменная пишется как ${variable_name}. Имена, начинающиеся с step_, зарезервированы для результатов шагов.

Папки и теги ​

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