Планировщик задач в Loginom

23 сентября 2024
0 комментариев

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

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

В Loginom пакетное выполнение сценариев можно осуществить двумя способами: с помощью утилиты BatchLauncher или планировщика задач. В обоих случаях требуется серверная редакция платформы: Team, Standard или Enterprise. Это связано с тем, что настольные программы взаимодействуют с пользователем интерактивно при помощи графического интерфейса, тогда как пакетное выполнение требует постоянно работающей службы, реагирующей на команды запуска пакета.

Для использования BatchLauncher необходимо правильно сформировать командную строку. Несмотря на трудоемкость настройки, этот способ актуален для проектов, где автоматизация процессов реализуется при помощи скриптов, таких как DevOps, CI/CD или автотестирование.

В отличие от BatchLauncher, который требует настройки командной строки, планировщик предлагает более простой и интуитивно понятный интерфейс. Он ориентирован на самостоятельное использование аналитиками, позволяя им настраивать сложные ETL- или ELT-процессы сбора данных, а также сценарии обучения AI-моделей без привлечения IT-департамента и написания кода. Настройка осуществляется в интерактивном режиме без необходимости использовать скриптовые языки.

Настройка прав

Прежде всего администратор должен предоставить пользователю роль «Пакетное выполнение». Это можно сделать в разделе «Администрирование» → «Пользователи». Если активировать опцию «Доступ ко всем задачам в планировщике», пользователю также будет разрешено редактировать и удалять задачи других аналитиков.

Редактирование пользователя

Настройка задачи

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

Добавление задачи

При настройке задачи можно задать следующие параметры:

  • Основные:
    • Запускаемый пакет. Его можно ввести вручную, выбрать из списка открытых пакетов или через диалоговое окно открытия файла.
    • Запускаемый узел. Имя или GUID узла, который нужно выполнить. Если он не указан, будет запускаться весь пакет.
    • Разрешить выполнение. Флаг, с помощью которого можно временно запретить запуск пакета.
    • Метка. Название задачи, понятное пользователю. Если метка не задана, она генерируется по умолчанию и соответствует имени файла.
    • Описание. Многострочный комментарий к настраиваемой задаче.
  • Расписание:
    • Запуск. Дата и время первого запуска.
    • Повтор. Признак регулярного выполнения задачи. Если отключен, задача будет выполнена однократно.
    • Повтор каждые. Периодичность запуска в миллисекундах/секундах/минутах/часах/днях/неделях/месяцах. Минимальный период — 10 миллисекунд.
    • Окончание. Время, по достижении которого задача не будет запускаться.
    • Дополнительные фильтры для ограничения запуска по дням недели, числам месяца и месяцам. Можно указать не конкретный день месяца, а вариант «последний день месяца».
  • Переменные. Задание значений переменных, созданных в пакете при проектировании сценариев.
  • Параметры запуска:
    • Запустить задачу, если пропущен плановый запуск.
    • Пропускать запуск при наличии активной сессии.
    • Переобучать модели при запуске. Указание на необходимость переобучения моделей машинного обучения, при условии, что в соответствующих узлах сценария данная опция включена.
    • Сохранять пакет после переобучения.
    • Лимит количества логов. Ограничение на максимальное количество логов, при достижении которого старые записи могут быть очищены. Кроме того логи очищаются при запуске Loginom Server.

Система старается запускать задачи в строго назначенное время, но при высокой загрузке процессора пакеты могут запускаться с небольшим опозданием, поэтому точное время запуска не гарантируется. Если задан очень короткий период (например, менее одной секунды), некоторые запланированные запуски могут быть пропущены.

Логика периодического выполнения следующая. Сначала определяется время запуска, отталкиваясь от значений полей «Начало» и «Повтор каждые». Затем проверяется, не превышает ли это дату окончания и удовлетворяет ли дополнительным фильтрам по дням недели, числам и месяцам. Например, если настроить запуск с 1 января 2024 год на 8:00 с повтором через 1 день, но исключить субботу и воскресенье, то задача будет выполняться каждое утро в будние дни вплоть до времени окончания.

У задачи также есть свойства, которые не настраиваются, а формируются программой автоматически:

  • Владелец (пользователь, создавший задачу);
  • Время предыдущего запуска;
  • Время следующего запуска;
  • Время создания;
  • Время модификации.

Способы выбора пакета и узла

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

Чтобы добавить задачу из файлового хранилища, нужно выделить пакет, нажать правую кнопку мыши и выбрать пункт «Добавить задачу в планировщик». Появится окно добавления задачи с заполненным полем «Запускаемый пакет». После этого нужно произвести необходимые настройки и сохранить задачу.

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

Настройка задачи планировщика из сценария

В поле «Запускаемый узел» указывается его GUID — уникальная строка для идентификации узла. Если при настройке модификатора доступа выбран вариант «Открытый» или «Опубликованный», узлу можно задать понятное имя. В этом случае в поле «Запускаемый узел» будет указано имя, а не GUID.

Добавление задачи на запуск узла

Журнал выполнения

В планировщике можно просматривать все сеансы выполнения задач: как активных, так и завершенных, как по одной задаче, так и по всем сразу.

Журнал выполнения

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

Коллизия при настройке задачи

Одной из часто возникающих ошибок при работе с планировщиком задач является ошибка вида «Узел {...} не найден». Причиной может быть то, что задача настроена, но пакет, который должен запускаться, не сохранен на диск.

Ошибка

Ошибка возникает, если при настройке задачи выбран узел из пакета, который был загружен в оперативную память, но не сохранен на диск. При запуске задачи Loginom считывает пакет из файлового хранилища, не находит узел с указанным GUID и выводит ошибку. Чтобы избежать этого, перед настройкой задачи пакет следует сохранить на диск.

Заключение

Планировщик — это простой способ настройки задач и автоматизации рабочих процессов. Все действия выполняются аналитиком самостоятельно без написания скриптов и каких-либо операций на сервере. Удобные механизмы настройки переменных, составления расписания и мониторинга запусков делают использование планировщика доступным для широкого круга пользователей.

Другие материалы по теме:

Loginom: что под «капотом»

Что нового в 7.2

#loginom

Смотрите также