Платформа 3V/Планировщик/Как настроить планировщик

Материал из 3v-wiki
Перейти к навигации Перейти к поиску

Статья находится в разработке!
Планировщика (scheduler) - это сервис для запуска задач по заранее заданному времени.

Начало работы с планировщиком

Если вы ранее не использовали планировщик, то вам потребуетсявыполнить следующие шаги:
Шаг 1 Добавить в Keycloak конфиденциального клиента подробную инструкцию по настройке можно посмотреть здесь;

    1. Для начала создайте конфиденциального клиента
    2. Далее заполните необходимые настройки на вкладке "Settings".
    3. Настройте необходимый маппинг ролей на вкладке "Service Account Roles".
2 шаг (online-video-cutter.com).gif



Теперь у вас есть ключ

4 шаг (online-video-cutter.com).gif



Шаг 2 Добавить в scheduler (https://api.3v-cloud.com/scheduler/swagger/index.html#/) новую аутентификацию в раздел Authentication выбирать метод /api/Authentication/Add

    1. Для этого вам необходимо авторизоваться в scheduler. Авторизация с испозованием токена осуществляется следующим образом.Зайдите на стенд и скопируйте значение токена, далее вставьте его в окно Available authorizations раздел bearer (apiKey) строку "Value:" и нажмите на кнопку "Authorize".

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

{
  "discriminator": "string",
  "tokenRequestUrl": "string",
  "clientId": "string",
  "clientSecret": "string"
}
Пример JSON описание аутентификации

3. После чего вы можете добавлять новые задачи. Для добавления задачи используйте метод /api/Scheduler/AddNewTask а разделе Scheduler. для добавления новой задачи можно использовать шаблон

{
  "id": 0,
  "name": "string",
  "runUrl": {
    "type": "Get",
    "url": "string",
    "headers": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "discriminator": "string"
  },
  "checkStateUrl": {
    "type": "Get",
    "url": "string",
    "headers": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "discriminator": "string"
  },
  "schedule": {
    "period": {
      "discriminator": "string"
    },
    "runTime": {
      "hours": 0,
      "minutes": 0
    },
    "discriminator": "string"
  },
  "isEnable": true,
  "authenticationSettingsId": 0,
  "discriminator": "string"
}
Пример JSON описание задачи

4. Для того чтобы проверить корректно ли отрабатывает ваша задача принудительно запустите ее используя "Принудительно запустить задачу по иденитификатору(/api/Scheduler/RunTask)".

5. Посмотрите статус задачи используя "Возвращает информацию о состоянии задачи" (/api/Scheduler/GetTaskState) если вы правильно настроили задачу, то должны получить сообщение.