创建丰富策略 API编辑

创建丰富策略。

response = client.enrich.put_policy(
  name: 'my-policy',
  body: {
    match: {
      indices: 'users',
      match_field: 'email',
      enrich_fields: [
        'first_name',
        'last_name',
        'city',
        'zip',
        'state'
      ]
    }
  }
)
puts response
PUT /_enrich/policy/my-policy
{
  "match": {
    "indices": "users",
    "match_field": "email",
    "enrich_fields": ["first_name", "last_name", "city", "zip", "state"]
  }
}

请求编辑

PUT /_enrich/policy/<enrich-policy>

先决条件编辑

要使用丰富策略,您必须拥有

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

描述编辑

使用创建丰富策略 API 创建 丰富策略

创建后,您无法更新或更改丰富策略。相反,您可以

  1. 创建并 执行 新的丰富策略。
  2. 将以前的丰富策略替换为任何正在使用的丰富处理器或 ES|QL 查询中的新丰富策略。
  3. 使用 删除丰富策略 API 或 Kibana 中的索引管理 删除以前的丰富策略。

路径参数编辑

<enrich-policy>
(必需,字符串) 要创建或更新的丰富策略的名称。

请求正文编辑

<policy-type>

(必需,对象) 配置丰富策略。字段键是丰富策略类型。有效的键值是

geo_match
根据 geo_shape 查询 将丰富数据与传入文档匹配。有关示例,请参阅 示例:根据地理位置丰富您的数据
match
根据 term 查询 将丰富数据与传入文档匹配。有关示例,请参阅 示例:根据精确值丰富您的数据
range
根据 term 查询 将传入文档中的数字、日期或 IP 地址与丰富索引中的范围匹配。有关示例,请参阅 示例:通过将值与范围匹配来丰富您的数据
<policy-type> 的属性
indices

(必需,字符串或字符串数组) 用于创建丰富索引的一个或多个源索引。

如果指定了多个索引,则它们必须共享一个公共 match_field

match_field
(必需,字符串) 源索引中用于匹配传入文档的字段。
enrich_fields
(必需,字符串数组) 要添加到匹配的传入文档中的字段。这些字段必须存在于源索引中。
query
(可选,查询 DSL 查询对象) 用于过滤丰富索引中文档的查询。该策略仅使用与该查询匹配的文档来丰富传入文档。默认为 match_all 查询。