执行 enrich 策略 API编辑

执行现有的 enrich 策略

response = client.enrich.execute_policy(
  name: 'my-policy',
  wait_for_completion: false
)
puts response
PUT /_enrich/policy/my-policy/_execute?wait_for_completion=false

请求编辑

PUT /_enrich/policy/<enrich-policy>/_execute

POST /_enrich/policy/<enrich-policy>/_execute

先决条件编辑

要使用 enrich 策略,您必须具有

  • 对使用的任何索引的 read 索引权限
  • enrich_user 内置角色

描述编辑

使用执行 enrich 策略 API 为现有的 enrich 策略创建 enrich 索引。

enrich 索引包含来自策略源索引的文档。enrich 索引始终以 .enrich-* 开头,是只读的,并且是 强制合并的

enrich 索引应该只被 enrich 处理器ES|QL ENRICH 命令 使用。避免将 enrich 索引用于其他目的。

创建后,您不能更新 enrich 索引或向其索引文档。相反,请更新您的源索引并再次 执行 enrich 策略。这将从您更新的源索引创建一个新的 enrich 索引。之前的 enrich 索引将通过延迟维护作业删除。默认情况下,每 15 分钟执行一次。

默认情况下,此 API 是同步的:它在策略执行完毕后返回。因为执行策略会执行多个操作,所以返回响应可能需要一段时间,尤其是在源索引很大的情况下。这可能会导致超时。为了防止超时,请将 wait_for_completion 参数设置为 false。这将在后台异步运行请求,并返回一个任务 ID。您可以使用任务 ID 通过 任务管理 API 管理请求。

路径参数编辑

<enrich-policy>
(必填,字符串)要执行的 Enrich 策略。

查询参数编辑

wait_for_completion
(可选,布尔值)如果为 true,则请求将阻塞,直到执行完成。如果为 false,则请求会立即返回,并在后台异步运行执行。默认为 true