Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›REST API ›API-интерфейсы подключения

API обновления планирования подключения

Эта функциональность находится в бета-версии и может быть изменена. Дизайн и код менее зрелые, чем официальные функции GA, и предоставляются как есть без каких-либо гарантий. Бета-функции не подпадают под SLA поддержки официальных функций GA.

Справочник нового API

Для получения самых актуальных данных об API обратитесь к API-интерфейсам подключения.

Обновляет конфигурацию планирования подключения.

Чтобы начать работу с API-интерфейсами подключения, ознакомьтесь с нашим руководством.

Запрос

PUT _connector/<connector_id>/_scheduling

Предварительные требования

  • Для синхронизации данных с помощью собственных подключений вам необходимо развернуть сервис подключения Elasticsearch на вашей собственной инфраструктуре. Для подключений, управляемых Elastic Cloud, этот сервис запускается автоматически.
  • Параметр connector_id должен ссылаться на существующее подключение.

Параметры пути

<connector_id>
(Обязательно, строка)

Тело запроса

scheduling
(Обязательно, объект) Конфигурация планирования для подключения. Эта конфигурация определяет частоту операций синхронизации для подключения.

Конфигурация планирования включает следующие атрибуты, каждый из которых представлен как объект ScheduleConfig. Если объект scheduling не содержит все типы расписаний, будут обновлены только предоставленные; остальные останутся неизменными.

  • access_control (Необязательно, объект ScheduleConfig) Определяет расписание для синхронизации настроек управления доступом для подключения.
  • full (Необязательно, объект ScheduleConfig) Определяет расписание для полной синхронизации содержимого.
  • incremental (Необязательно, объект ScheduleConfig) Определяет расписание для инкрементальной синхронизации содержимого.

Каждый объект ScheduleConfig включает следующие под-атрибуты:

  • enabled (Обязательно, булево значение) Флаг, который включает или отключает планирование.
  • interval (Обязательно, строка) Выражение CRON, представляющее расписание синхронизации. Это выражение определяет частоту выполнения операций синхронизации. Оно должно быть предоставлено в формате CRON.

Коды ответов

200
Поле подключения scheduling было успешно обновлено.
400
Поле connector_id не было предоставлено или запрос был неправильно сформирован.
404 (Отсутствующие ресурсы)
Подключение, соответствующее connector_id, не найдено.

Примеры

В следующем примере обновляется свойство scheduling для подключения с идентификатором my-connector:

resp = client.connector.update_scheduling(
    connector_id="my-connector",
    scheduling={
        "access_control": {
            "enabled": True,
            "interval": "0 10 0 * * ?"
        },
        "full": {
            "enabled": True,
            "interval": "0 20 0 * * ?"
        },
        "incremental": {
            "enabled": False,
            "interval": "0 30 0 * * ?"
        }
    },
)
print(resp)
response = client.connector.update_scheduling(
  connector_id: 'my-connector',
  body: {
    scheduling: {
      access_control: {
        enabled: true,
        interval: '0 10 0 * * ?'
      },
      full: {
        enabled: true,
        interval: '0 20 0 * * ?'
      },
      incremental: {
        enabled: false,
        interval: '0 30 0 * * ?'
      }
    }
  }
)
puts response
const response = await client.connector.updateScheduling({
  connector_id: "my-connector",
  scheduling: {
    access_control: {
      enabled: true,
      interval: "0 10 0 * * ?",
    },
    full: {
      enabled: true,
      interval: "0 20 0 * * ?",
    },
    incremental: {
      enabled: false,
      interval: "0 30 0 * * ?",
    },
  },
});
console.log(response);
PUT _connector/my-connector/_scheduling
{
    "scheduling": {
        "access_control": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        },
        "full": {
            "enabled": true,
            "interval": "0 20 0 * * ?"
        },
        "incremental": {
            "enabled": false,
            "interval": "0 30 0 * * ?"
        }
    }
}
{
    "result": "updated"
}

В следующем примере обновляется только расписание синхронизации full, другие типы расписаний остаются неизменными:

resp = client.connector.update_scheduling(
    connector_id="my-connector",
    scheduling={
        "full": {
            "enabled": True,
            "interval": "0 10 0 * * ?"
        }
    },
)
print(resp)
const response = await client.connector.updateScheduling({
  connector_id: "my-connector",
  scheduling: {
    full: {
      enabled: true,
      interval: "0 10 0 * * ?",
    },
  },
});
console.log(response);
PUT _connector/my-connector/_scheduling
{
    "scheduling": {
        "full": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        }
    }
}
{
    "result": "updated"
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/update-connector-scheduling-api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API