弃用信息 API编辑

这些 API 旨在被 Kibana 的 升级助手 间接使用。我们强烈建议您使用 升级助手 从 7.17 升级到 8.14.2。有关升级说明,请参阅 升级到 Elastic 8.14.2

弃用 API 用于检索有关使用将在未来版本中删除或更改的弃用功能的不同集群、节点和索引级别设置的信息。

请求编辑

GET /_migration/deprecations

GET /<target>/_migration/deprecations

先决条件编辑

  • 如果启用了 Elasticsearch 安全功能,您必须具有 manage 集群权限 才能使用此 API。

路径参数编辑

<target>

(可选,字符串) 要检查的数据流或索引的逗号分隔列表。支持通配符 (*) 表达式。

指定此参数时,只返回指定数据流或索引的弃用信息。

设置编辑

您可以使用以下设置来控制弃用信息 API 的行为

此设置旨在被 Elasticsearch 服务Elastic Cloud EnterpriseElastic Cloud on Kubernetes 间接使用。不支持直接使用。

deprecation.skip_deprecated_settings (动态) 默认为空列表。设置为要被弃用信息 API 忽略的设置名称列表。与该列表中的设置相关的任何弃用信息都不会被 API 返回。支持简单的通配符匹配。

示例编辑

要查看集群中的违规者列表,请向 _migration/deprecations 端点提交 GET 请求

response = client.migration.deprecations
puts response
GET /_migration/deprecations

示例响应

{
  "cluster_settings" : [
    {
      "level" : "critical",
      "message" : "Cluster name cannot contain ':'",
      "url" : "https://elastic.ac.cn/guide/en/elasticsearch/reference/7.0/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_cluster_name",
      "details" : "This cluster is named [mycompany:logging], which contains the illegal character ':'."
    }
  ],
  "node_settings" : [ ],
  "index_settings" : {
    "logs:apache" : [
      {
        "level" : "warning",
        "message" : "Index name cannot contain ':'",
        "url" : "https://elastic.ac.cn/guide/en/elasticsearch/reference/7.0/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_index_name",
        "details" : "This index is named [logs:apache], which contains the illegal character ':'."
      }
    ]
  },
  "ml_settings" : [ ]
}

响应会分解所有您应该在升级集群之前解决的特定向前不兼容设置。任何违规设置都表示为弃用警告。

以下是一个弃用警告示例

{
  "level" : "warning",
  "message" : "This is the generic descriptive message of the breaking change",
  "url" : "https://elastic.ac.cn/guide/en/elasticsearch/reference/6.0/breaking_60_indices_changes.html",
  "details" : "more information, like which nodes, indices, or settings are to blame"
}

如所示,有一个 level 属性描述了问题的严重程度。

警告

您可以直接升级,但您正在使用弃用功能,这些功能在未来版本中将不可用或行为不同。

严重

如果不解决此问题,您无法升级。

message 属性和可选的 details 属性提供了有关弃用警告的描述性信息。 url 属性提供指向重大变更文档的链接,您可以在其中找到有关此更改的更多信息。

任何集群级弃用警告都可以在 cluster_settings 键下找到。类似地,任何节点级警告都可以在 node_settings 下找到。由于只有您节点的选定子集可能包含这些设置,因此阅读 details 部分以获取有关哪些节点受影响的更多信息非常重要。索引警告按索引进行分段,可以使用查询中的索引模式进行过滤。本节包括对请求路径中指定的数据流的备份索引的警告。机器学习相关的弃用警告可以在 ml_settings 键下找到。

以下示例请求仅显示所有 logstash-* 索引的索引级弃用信息

response = client.migration.deprecations(
  index: 'logstash-*'
)
puts response
GET /logstash-*/_migration/deprecations