更新连接器调度 API编辑

此功能处于测试阶段,可能会发生变化。设计和代码比正式 GA 功能成熟度低,按现状提供,不提供任何担保。测试版功能不受正式 GA 功能支持 SLA 的约束。

更新连接器的 scheduling 配置。

要开始使用连接器 API,请查看 教程

请求编辑

PUT _connector/<connector_id>/_scheduling

先决条件编辑

  • 要使用自管理连接器同步数据,您需要在自己的基础设施上部署 Elastic 连接器服务。此服务在 Elastic Cloud 上自动运行,用于原生连接器。
  • The 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 匹配的连接器。

示例编辑

以下示例更新了 ID 为 my-connector 的连接器的 scheduling 属性

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
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 同步调度,其他调度类型保持不变

PUT _connector/my-connector/_scheduling
{
    "scheduling": {
        "full": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        }
    }
}
{
    "result": "updated"
}