Задачи

Задачи — это набор политик с расширенными настройками для выполнения

Подсказка

Страница «Задачи» доступна при использовании локального сервера Удаленный доступ или Управление конфигурациями (UEM)

Как это работает

Задача объединяет одну или несколько политик в единый исполняемый блок и добавляет к ним:

  • расписание — однократный запуск, по cron-выражению или периодически

  • область действия — выбранные устройства, группы или динамические группы

  • приоритет — порядок обработки в очереди, если запускается несколько задач параллельно

  • отчёты — шаблоны Отчётов, которые автоматически формируются после завершения задачи (доступно только при UEM)

  • уведомления — рассылка пользователю/администратору при завершении задачи со ссылкой на отчёт

Жизненный цикл задачи:

  1. создаётся вручную через Добавить Задачу или из обращения через Портал самообслуживания

  2. активируется флагом Активно — без него задача не запускается по расписанию, даже если расписание задано

  3. ставится в очередь — задача попадает в очередь задач и ждёт, когда освободится свободный поток для исполнения. В этот момент в столбце статуса отображается значение Запускается

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

  5. выполняется на стороне сервера в фоновом режиме — статус и прогресс видны в таблице и на странице задачи

  6. завершается со статусом Завершено или Ошибка. Логи и статистика доступны через действия Логи, График выполнения и Статистика выполнения, а уведомление о завершении уходит в выбранные каналы

Важно

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

Порядок выполнения политик

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

Подсказка

Порядок важен для составных сценариев. Например, в паре Установка пакетаПерезагрузка установка должна идти первой, иначе устройство перезагрузится до установки. Аналогично для пары Обновление пакетаИнвентаризация — чтобы инвентаризация собрала уже обновлённый список ПО

Важно

Этот порядок относится только к политикам внутри одной задачи. Между разными задачами очерёдность определяется полем Приоритет и временем постановки задачи в очередь

Запуск при включении устройства

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

Когда устройство появляется онлайн, сервер автоматически подбирает все активные задачи с этим флагом, в область действия которых попадает данное устройство (через Устройства, Группы, Динамические группы или с пустой областью — на «всех»), и ставит их в очередь на выполнение

Примечание

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

Подсказка

Запускать при включении устройства и расписание работают независимо и могут использоваться вместе. Если у задачи нет расписания, но активирован этот флаг, задача будет запускаться только при подключении устройства. Если нет ни флага, ни расписания, задача автоматически запускаться не будет — её придётся запускать вручную (см. Запуск без расписания)

Таймаут выполнения

Максимальное время выполнения задачи задаётся глобально для всего сервера, а не у каждой задачи. Значение настраивается в разделе Администрирование → Настройки, блок Настройки Ansible, поле Таймаут выполнения задачи. Значение по умолчанию — 300 секунд (5 минут)

Если задача выполняется дольше указанного времени, сервер принудительно прерывает её и помечает запуск как неудачный — итоговый статус становится Ошибка

Важно

Таймаут общий для всех задач: его нельзя переопределить под конкретную задачу. Если в системе есть длительные операции (установка крупных пакетов, обслуживание сервера, копирование больших файлов), убедитесь, что глобальное значение достаточно большое — иначе они будут стабильно прерываться по таймауту

Приоритет задачи

Поле Приоритет определяет, в каком порядке сервер берёт задачи из очереди на выполнение, если одновременно ждут несколько задач. Чем выше приоритет, тем раньше задача будет запущена

Доступные значения:

  • Критический приоритет — выполняется раньше прочих

  • Высокий приоритет

  • Средний приоритет

  • Низкий приоритет — значение по умолчанию

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

Примечание

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

Статус «Завершено» и «Ошибка»

В конце выполнения сервер выставляет итоговый статус по результатам каждого устройства из области действия. Для текущего запуска ведётся три счётчика:

  • Успешно — число устройств, на которых задача выполнилась без ошибок

  • Ошибка — число устройств, на которых выполнение завершилось ошибкой

  • Недоступно — число устройств, до которых сервер не смог достучаться

Задача переводится в статус Ошибка, если выполняется хотя бы одно из условий:

  • сам процесс выполнения был прерван (например, по таймауту, остановкой вручную или внутренней ошибкой);

  • ни на одном устройстве задача не отработала успешно (Успешно равно нулю);

  • хотя бы на одном устройстве выполнение завершилось ошибкой (Ошибка больше нуля);

  • хотя бы одно устройство в области действия было недоступно (Недоступно больше нуля).

В остальных случаях задача получает статус Завершено. Это означает, что один недоступный или упавший хост в области действия приводит к итоговому статусу Ошибка у всей задачи — даже если часть устройств отработала корректно

Подсказка

Чтобы посмотреть, какие именно устройства попали в Ошибка или Недоступно, перейдите по действию Статистика выполнения — там видно результат по каждому устройству. Полные логи каждого исполнения доступны на странице Логи исполнения

Счётчики выполнения

В карточке задачи хранятся текущие значения трёх счётчиков — Успешно, Ошибка, Недоступно. Их поведение:

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

  • значения относятся к последнему запуску задачи и перезаписываются при следующем;

  • по этим счётчикам формируется столбец Прогресс выполнения, итоговый статус задачи и тело уведомления о завершении

Уведомления о завершении

После завершения задачи сервер отправляет уведомление пользователю или администратору. В уведомление подставляются:

  • название задачи;

  • финальный прогресс выполнения (та же строка XX.XX% (N/M), что отображается в столбце Прогресс выполнения);

  • ссылка на сформированный отчёт, если в задаче настроены шаблоны Отчётов.

Какие события рассылаются, по каким каналам (электронная почта, Telegram и т.д.) и кому именно — настраивается на странице Организация → Уведомления. Там же указываются получатели и используемые шаблоны

Запуск без расписания

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

Запустить её можно только вручную:

  • из контекстного меню задачи действиями Запустить в фоне или Запустить в терминале;

  • массовым действием Запустить выбранные задачи;

  • автоматически — как часть обработки обращения через Портал самообслуживания.

Подсказка

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

Прогресс выполнения

В столбце Прогресс выполнения для каждой задачи отображается строка вида XX.XX% (N/M):

  • M — общее число устройств, на которых задача должна отработать в текущем запуске (определяется областью действия — выбранными устройствами, группами и динамическими группами)

  • N — число устройств, на которых задача уже успешно завершилась в текущем запуске (без ошибок и без недоступных хостов)

  • XX.XX% — соотношение N / M, округлённое до двух знаков после запятой

Важно

В числителе учитываются только успешные результаты. Если устройство недоступно или выполнение завершилось ошибкой, такой результат не попадает в N — поэтому прогресс может не дойти до 100.00%, даже когда задача уже завершилась. Итоговое распределение по статусам (успешно, ошибка, недоступно) удобно смотреть на страницах Логи исполнения и Статистика выполнения

Примечание

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

Примечание

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

  • Инвентаризация

  • Обслуживание сервера

    Подсказка

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

    • Обслуживание сервера

    • Обновление устройств

  1. Предустановленные задачи можно удалить и редактировать

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

Описание страницы

На странице Задачи отображается:

  1. Кнопка Добавить Задачу

  2. Фильтр

  3. Массовые действия

  4. Таблица с возможностью настройки отображаемых столбцов

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

При нажатии на кнопку Добавить Задачу откроется страница создания задачи, подробнее о создании задачи

Фильтр

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

  1. Активно — фильтрация задач по статусу активности

  2. Исполняется — фильтрация задач по статусу исполнения

  3. Успешно — фильтрация задач по статусу успеха

  4. Системная задача — фильтрация пользовательских и системных задач

  5. Поле поиска — поиск по ключевому слову

Для выполнения поиска необходимо заполнить поля или часть полей и нажать на кнопку Найти

Массовые действия

Доступные действия:

  1. Удалить выбранные задачи — удаление выбранных задач

  2. Включить выбранные задачи — включение выбранных задач

  3. Отключить выбранные задачи — отключение выбранных задач

  4. Запустить выбранные задачи — запуск выбранных задач

  5. Остановить выбранные задачи — остановка выбранных задач

  6. Экспортировать выбранные задачи — экспорт выбранных задач

    Примечание

    После выбора данного действия нужно выбрать необходимый формат файла

Важно

В зависимости от прав действия могут отсутствовать

Для выполнения действия необходимо нажать на кнопку Выполнить

Удаление задач

Для массового удаления задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Удалить выбранные задачи

  3. Нажать на кнопку Выполнить

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

  5. Нажать на кнопку Да, я уверен

    Можно отменить данную операцию, нажав на кнопку Нет, отменить и вернуться к выбору

  6. Выбранные задачи будут удалены

Включение задач

Для массового включения задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Включить выбранные задачи

  3. Нажать на кнопку Выполнить

  4. Выбранные задачи будут включены

Примечание

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

Отключение задач

Для массового отключения задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Отключить выбранные задачи

  3. Нажать на кнопку Выполнить

  4. Выбранные задачи будут отключены

Примечание

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

Важно

Задача с установленным расписанием не будет выполняться, пока ее не активировать

Запуск задач

Для массового запуска задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Запустить выбранные задачи

  3. Нажать на кнопку Выполнить

  4. Выбранные задачи будут запущены в фоне

Примечание

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

Остановка задач

Для массовой остановки задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Остановить выбранные задачи

  3. Нажать на кнопку Выполнить

  4. Выбранные задачи будут остановлены

Важно

При остановке сервер прерывает все фоновые процессы этой задачи и снимает с неё признаки Исполняется и Ожидает исполнения. Если задача была активно запущена, она переводится в статус Ошибка, даже если часть устройств уже успела отработать; если задача только стояла в очереди и ещё не успела начать выполнение, её итоговый статус не меняется. Счётчики Успешно / Ошибка / Недоступно сохраняют значения на момент остановки и обнулятся только при следующем запуске

Экспорт задач

Для массового экспорта задач необходимо:

  1. Отметить необходимые задачи в таблице

  2. Выбрать действие Экспортировать выбранные задачи

  3. Выбрать необходимый формат файла

  4. Нажать на кнопку Выполнить

  5. Файл будет загружен на устройство

Таблица

Таблица разбита по столбцам:

  1. Статус — статус активности задачи

    • Новая задача — данный статус устанавливается у созданной задачи

    • Запускается — подготовка к выполнению задачи

    • Выполняется — задача находится в процессе выполнения

    • Завершено — успешное выполнение задачи

    • Ошибка — при выполнении задачи произошла ошибка

    • Отключено — у задачи отключена опция Активно (Выполнять задачу в соответствии с расписанием)

  2. Задача — пользовательское название задачи

  3. Приоритет — приоритет задачи в очереди задач: Критический, Высокий, Средний, Низкий или Вне очереди (выставляется автоматически для задач, запущенных вручную)

  4. Прогресс выполнения — индикатор прогресса при выполнении задачи

  5. Последний запуск — дата и время последнего запуска задачи

  6. Следующий запуск — дата и время следующего запуска задачи по расписанию

  7. Создана — дата и время создания задачи

  8. Обновлена — дата и время последнего изменения задачи

Операции

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

Доступные действия:

  1. Редактировать — при выборе этого пункта откроются свойства задачи

  2. Удалить — при выборе этого пункта задача будет удалена

  3. История изменений — при выборе этого пункта будет отображена история задачи: создание/редактирование и пользователь, который выполнил данные операции

  4. Запустить в фоне — задача ставится в очередь со служебным приоритетом Вне очереди и выполняется на сервере без участия пользователя. Веб-интерфейс при этом не блокируется — за прогрессом и итогом нужно следить через столбцы Статус и Прогресс выполнения либо через действия Логи и Статистика выполнения. Подходит для регулярных и массовых запусков

  5. Запустить в терминале — задача запускается так же, Вне очереди, но дополнительно открывается всплывающее окно терминала, в которое в реальном времени выводятся логи выполнения. В окне доступны кнопки Прервать (останавливает задачу так же, как действие Остановить) и Закрыть. Подходит для отладки одиночных запусков, когда нужен живой вывод

  6. Логи — при выборе этого пункта произойдет переход на страницу Логи исполнения с активным фильтром по этой задаче

  7. График выполнения — при выборе этого пункта произойдет переход на страницу График выполнения с визуализацией длительности и количества выполнений задачи

  8. Статистика выполнения — при выборе этого пункта произойдет переход на страницу Статистика выполнения с отображением статусов выполнения задачи по каждому устройству