查询规则(Query rules)

class elasticsearch.client.QueryRulesClient

To use this client, access client.query_rules from an Elasticsearch client. For example:

from elasticsearch import Elasticsearch

# Create the client instance
client = Elasticsearch(...)
# Use the query_rules client
client.query_rules.<method>(...)
delete_rule(*, ruleset_id, rule_id, error_trace=None, filter_path=None, human=None, pretty=None)

删除查询规则。 删除查询规则集中的查询规则。 这是一个不可逆的破坏性操作,只能通过重新使用创建或更新查询规则API添加相同规则来恢复。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-delete-rule

Parameters:
  • ruleset_id (str) – 包含待删除规则的查询规则集的唯一标识符

  • rule_id (str) – 指定规则集中待删除查询规则的唯一标识符

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

Return type:

ObjectApiResponse[Any]

delete_ruleset(*, ruleset_id, error_trace=None, filter_path=None, human=None, pretty=None)

删除查询规则集。 移除查询规则集及其关联数据。 这是一个不可恢复的破坏性操作。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-delete-ruleset

Parameters:
  • ruleset_id (str) – 待删除查询规则集的唯一标识符

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

Return type:

ObjectApiResponse[Any]

get_rule(*, ruleset_id, rule_id, error_trace=None, filter_path=None, human=None, pretty=None)

获取查询规则。 获取查询规则集中某个查询规则的详细信息。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-get-rule

Parameters:
  • ruleset_id (str) – 包含待检索规则的查询规则集的唯一标识符

  • rule_id (str) – 指定规则集中待检索查询规则的唯一标识符

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

Return type:

ObjectApiResponse[Any]

get_ruleset(*, ruleset_id, error_trace=None, filter_path=None, human=None, pretty=None)

获取查询规则集。 获取查询规则集的详细信息。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-get-ruleset

Parameters:
  • ruleset_id (str) – 查询规则集的唯一标识符

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

Return type:

ObjectApiResponse[Any]

list_rulesets(*, error_trace=None, filter_path=None, from_=None, human=None, pretty=None, size=None)

获取所有查询规则集。 获取查询规则集的摘要信息。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-list-rulesets

Parameters:
  • from – 从第一条结果开始的偏移量

  • size (int | None) – 要检索的最大结果数量

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • from_ (int | None)

  • human (bool | None)

  • pretty (bool | None)

Return type:

ObjectApiResponse[Any]

put_rule(*, ruleset_id, rule_id, actions=None, criteria=None, type=None, error_trace=None, filter_path=None, human=None, pretty=None, priority=None, body=None)

创建或更新查询规则。 在查询规则集中创建或更新查询规则。

重要提示:由于固定查询的限制,您只能使用ids或docs来固定文档,但不能在单个规则中同时使用两者。 建议在查询规则集中使用其中一种方式,以避免错误。 此外,固定查询最多只能固定100条命中结果。 如果多个匹配规则固定了超过100个文档,则仅按规则集中指定的顺序固定前100个文档。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-put-rule

Parameters:
  • ruleset_id (str) – 包含待创建或更新规则的查询规则集的唯一标识符。

  • rule_id (str) – 指定规则集中待创建或更新的查询规则唯一标识符。

  • actions (Mapping[str, Any] | None) – 规则匹配时要执行的操作。此操作的格式取决于规则类型。

  • criteria (Mapping[str, Any] | Sequence[Mapping[str, Any]] | None) – 规则应用必须满足的条件。如果为规则指定了多个条件,则必须满足所有条件才能应用该规则。

  • type (str | Literal['exclude', 'pinned'] | None) – 规则类型。

  • priority (int | None)

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

  • body (Dict[str, Any] | None)

Return type:

ObjectApiResponse[Any]

put_ruleset(*, ruleset_id, rules=None, error_trace=None, filter_path=None, human=None, pretty=None, body=None)

创建或更新查询规则集。 每个规则集最多包含100条规则。 可通过xpack.applications.rules.max_rules_per_ruleset集群设置提高此限制。

重要提示:由于固定查询的限制,您只能使用idsdocs选择文档,但不能在单个规则中同时使用两者。 建议在查询规则集中使用其中一种方式,以避免错误。 此外,固定查询最多只能固定100条命中结果。 如果多个匹配规则固定了超过100个文档,则仅按规则集中指定的顺序固定前100个文档。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-put-ruleset

Parameters:
Return type:

ObjectApiResponse[Any]

test(*, ruleset_id, match_criteria=None, error_trace=None, filter_path=None, human=None, pretty=None, body=None)

测试查询规则集。 对查询规则集评估匹配条件,以识别符合该条件的规则。

https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-test

Parameters:
  • ruleset_id (str) – 待创建或更新的查询规则集唯一标识符

  • match_criteria (Mapping[str, Any] | None) – 应用于给定查询规则集中规则的匹配条件。匹配条件应与规则`criteria.metadata`字段中定义的键相匹配。

  • error_trace (bool | None)

  • filter_path (str | Sequence[str] | None)

  • human (bool | None)

  • pretty (bool | None)

  • body (Dict[str, Any] | None)

Return type:

ObjectApiResponse[Any]