非推奨情報API

これらのAPIは、Kibanaのアップグレードアシスタントによる間接的な使用のために設計されています。7.17から8.15.2にアップグレードするには、アップグレードアシスタントの使用を強く推奨します。アップグレード手順については、Elastic 8.15.2へのアップグレードを参照してください。

非推奨APIは、将来のバージョンで削除または変更される非推奨機能を使用しているさまざまなクラスター、ノード、およびインデックスレベルの設定に関する情報を取得するために使用されます。

リクエスト

GET /_migration/deprecations

GET /<target>/_migration/deprecations

前提条件

  • Elasticsearchのセキュリティ機能が有効になっている場合、このAPIを使用するにはmanage クラスター権限が必要です。

パスパラメータ

  • <target>
  • (オプション、文字列)チェックするデータストリームまたはインデックスのカンマ区切りリスト。ワイルドカード(*)式がサポートされています。
    このパラメータを指定すると、指定されたデータストリームまたはインデックスの非推奨情報のみが返されます。

設定

非推奨情報APIの動作を制御するために、次の設定を使用できます:


この設定は、Elasticsearch ServiceElastic Cloud Enterprise、およびElastic Cloud on Kubernetesによる間接的な使用のために設計されています。直接の使用はサポートされていません。

  1. ## 例
  2. クラスター内の違反者のリストを表示するには、`````_migration/deprecations`````エンドポイントにGETリクエストを送信します:
  3. #### Python
  4. ``````python
  5. resp = client.migration.deprecations()
  6. print(resp)
  7. `

Ruby

  1. response = client.migration.deprecations
  2. puts response

Js

  1. const response = await client.migration.deprecations();
  2. console.log(response);

コンソール

  1. GET /_migration/deprecations

例の応答:

Js

  1. {
  2. "cluster_settings" : [
  3. {
  4. "level" : "critical",
  5. "message" : "Cluster name cannot contain ':'",
  6. "url" : "https://www.elastic.co/guide/en/elasticsearch/reference/7.0/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_cluster_name",
  7. "details" : "This cluster is named [mycompany:logging], which contains the illegal character ':'."
  8. }
  9. ],
  10. "node_settings" : [ ],
  11. "index_settings" : {
  12. "logs:apache" : [
  13. {
  14. "level" : "warning",
  15. "message" : "Index name cannot contain ':'",
  16. "url" : "https://www.elastic.co/guide/en/elasticsearch/reference/7.0/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_index_name",
  17. "details" : "This index is named [logs:apache], which contains the illegal character ':'."
  18. }
  19. ]
  20. },
  21. "ml_settings" : [ ]
  22. }

応答は、クラスターをアップグレードする前に解決すべき特定の前方互換性のない設定をすべて分解します。違反している設定は非推奨警告として表示されます。

以下は非推奨警告の例です:

Js

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

示されているように、問題の重要性を説明するlevelプロパティがあります。

warning 直接アップグレードできますが、非推奨機能を使用しています。
将来のバージョンでは利用できなくなるか、異なる動作をします。
critical この問題を修正しない限り、アップグレードできません。

messageプロパティとオプションのdetailsプロパティは、非推奨警告に関する説明情報を提供します。urlプロパティは、変更内容に関する詳細情報を見つけることができるBreaking Changes Documentationへのリンクを提供します。

クラスター全体の非推奨警告はcluster_settingsキーの下に見つけることができます。同様に、ノードレベルの警告はnode_settingsの下に見つけることができます。これらの設定を含むノードの選択されたサブセットのみが存在する可能性があるため、どのノードが影響を受けるかについての詳細情報はdetailsセクションを読むことが重要です。インデックス警告はインデックスごとに区分され、クエリ内のインデックスパターンを使用してフィルタリングできます。このセクションには、リクエストパスで指定されたデータストリームのバックインデックスに関する警告が含まれています。機械学習に関連する非推奨警告はml_settingsキーの下に見つけることができます。

以下の例のリクエストは、すべてのlogstash-*インデックスのインデックスレベルの非推奨情報のみを示しています:

Python

  1. resp = client.migration.deprecations(
  2. index="logstash-*",
  3. )
  4. print(resp)

Ruby

  1. response = client.migration.deprecations(
  2. index: 'logstash-*'
  3. )
  4. puts response

Js

  1. const response = await client.migration.deprecations({
  2. index: "logstash-*",
  3. });
  4. console.log(response);

コンソール

  1. GET /logstash-*/_migration/deprecations