deprecation.asciidoc 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. [role="xpack"]
  2. [testenv="basic"]
  3. [[migration-api-deprecation]]
  4. === Deprecation info APIs
  5. ++++
  6. <titleabbrev>Deprecation info</titleabbrev>
  7. ++++
  8. The deprecation API is to be used to retrieve information about different
  9. cluster, node, and index level settings that use deprecated features that will
  10. be removed or changed in the next major version.
  11. [float]
  12. ==== Request
  13. `GET /_migration/deprecations` +
  14. `GET /<index_name>/_migration/deprecations`
  15. //=== Description
  16. [float]
  17. ==== Path Parameters
  18. `index_name`::
  19. (string) Identifier for the index. It can be an index name or a wildcard
  20. expression. When you specify this parameter, only index-level deprecations for
  21. the specified indices are returned.
  22. //=== Query Parameters
  23. //=== Authorization
  24. [float]
  25. ==== Examples
  26. To see the list of offenders in your cluster, submit a GET request to the
  27. `_migration/deprecations` endpoint:
  28. [source,js]
  29. --------------------------------------------------
  30. GET /_migration/deprecations
  31. --------------------------------------------------
  32. // CONSOLE
  33. // TEST[skip:cannot assert tests have certain deprecations]
  34. Example response:
  35. ["source","js",subs="attributes,callouts,macros"]
  36. --------------------------------------------------
  37. {
  38. "cluster_settings" : [
  39. {
  40. "level" : "critical",
  41. "message" : "Cluster name cannot contain ':'",
  42. "url" : "{ref}/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_cluster_name",
  43. "details" : "This cluster is named [mycompany:logging], which contains the illegal character ':'."
  44. }
  45. ],
  46. "node_settings" : [ ],
  47. "index_settings" : {
  48. "logs:apache" : [
  49. {
  50. "level" : "warning",
  51. "message" : "Index name cannot contain ':'",
  52. "url" : "{ref}/breaking-changes-7.0.html#_literal_literal_is_no_longer_allowed_in_index_name",
  53. "details" : "This index is named [logs:apache], which contains the illegal character ':'."
  54. }
  55. ]
  56. }
  57. }
  58. --------------------------------------------------
  59. // NOTCONSOLE
  60. The response breaks down all the specific forward-incompatible settings that you
  61. should resolve before upgrading your cluster. Any offending settings are
  62. represented as a deprecation warning.
  63. The following is an example deprecation warning:
  64. ["source","js",subs="attributes,callouts,macros"]
  65. --------------------------------------------------
  66. {
  67. "level" : "warning",
  68. "message" : "This is the generic descriptive message of the breaking change",
  69. "url" : "{ref-60}/breaking_60_indices_changes.html",
  70. "details" : "more information, like which nodes, indices, or settings are to blame"
  71. }
  72. --------------------------------------------------
  73. // NOTCONSOLE
  74. As is shown, there is a `level` property that describes the significance of the
  75. issue.
  76. |=======
  77. |warning | You can upgrade directly, but you are using deprecated functionality
  78. which will not be available or behave differently in the next major version.
  79. |critical | You cannot upgrade without fixing this problem.
  80. |=======
  81. The `message` property and the optional `details` property provide descriptive
  82. information about the deprecation warning. The `url` property provides a link to
  83. the Breaking Changes Documentation, where you can find more information about
  84. this change.
  85. Any cluster-level deprecation warnings can be found under the `cluster_settings`
  86. key. Similarly, any node-level warnings are found under `node_settings`. Since
  87. only a select subset of your nodes might incorporate these settings, it is
  88. important to read the `details` section for more information about which nodes
  89. are affected. Index warnings are sectioned off per index and can be filtered
  90. using an index-pattern in the query.
  91. The following example request shows only index-level deprecations of all
  92. `logstash-*` indices:
  93. [source,js]
  94. --------------------------------------------------
  95. GET /logstash-*/_migration/deprecations
  96. --------------------------------------------------
  97. // CONSOLE
  98. // TEST[skip:cannot assert tests have certain deprecations]