From 86bb8a015b346f7cc5be7cfc7b5afd670609b77b Mon Sep 17 00:00:00 2001 From: Brian Clozel Date: Mon, 6 Nov 2023 11:52:27 +0100 Subject: [PATCH] Document that "error" key is preferred in observations This commit documents that the "error" key in Micrometer Observations should be preferred over the legacy "exception" one. Right now the information is duplicated but we might remove the deprecated one in the future. Closes gh-31514 --- .../ROOT/pages/integration/observability.adoc | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/framework-docs/modules/ROOT/pages/integration/observability.adoc b/framework-docs/modules/ROOT/pages/integration/observability.adoc index 62fa47ab09..53a59abf8f 100644 --- a/framework-docs/modules/ROOT/pages/integration/observability.adoc +++ b/framework-docs/modules/ROOT/pages/integration/observability.adoc @@ -109,7 +109,8 @@ By default, the following `KeyValues` are created: |Name | Description |`code.function` _(required)_|Name of Java `Method` that is scheduled for execution. |`code.namespace` _(required)_|Canonical name of the class of the bean instance that holds the scheduled method. -|`exception` _(required)_|Name of the exception thrown during the execution, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the execution, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |`outcome` _(required)_|Outcome of the method execution. Can be `"SUCCESS"`, `"ERROR"` or `"UNKNOWN"` (if for example the operation was cancelled during execution). |=== @@ -134,7 +135,8 @@ By default, both observations share the same set of possible `KeyValues`: [cols="a,a"] |=== |Name | Description -|`exception` |Class name of the exception thrown during the messaging operation (or "none"). +|`error` |Class name of the exception thrown during the messaging operation (or "none"). +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |`messaging.destination.temporary` _(required)_|Whether the destination is a `TemporaryQueue` or `TemporaryTopic` (values: `"true"` or `"false"`). |`messaging.operation` _(required)_|Name of JMS operation being performed (values: `"publish"` or `"process"`). |=== @@ -207,7 +209,8 @@ By default, the following `KeyValues` are created: [cols="a,a"] |=== |Name | Description -|`exception` _(required)_|Name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |`method` _(required)_|Name of HTTP request method or `"none"` if the request was not received properly. |`outcome` _(required)_|Outcome of the HTTP server exchange. |`status` _(required)_|HTTP response raw status code, or `"UNKNOWN"` if no response was created. @@ -244,7 +247,8 @@ By default, the following `KeyValues` are created: [cols="a,a"] |=== |Name | Description -|`exception` _(required)_|Name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |`method` _(required)_|Name of HTTP request method or `"none"` if the request was not received properly. |`outcome` _(required)_|Outcome of the HTTP server exchange. |`status` _(required)_|HTTP response raw status code, or `"UNKNOWN"` if no response was created. @@ -283,7 +287,8 @@ Instrumentation uses the `org.springframework.http.client.observation.ClientRequ |`client.name` _(required)_|Client name derived from the request URI host. |`status` _(required)_|HTTP response raw status code, or `"IO_ERROR"` in case of `IOException`, or `"CLIENT_ERROR"` if no response was received. |`outcome` _(required)_|Outcome of the HTTP client exchange. -|`exception` _(required)_|Name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |=== .High cardinality Keys @@ -310,7 +315,8 @@ Instrumentation uses the `org.springframework.http.client.observation.ClientRequ |`client.name` _(required)_|Client name derived from the request URI host. |`status` _(required)_|HTTP response raw status code, or `"IO_ERROR"` in case of `IOException`, or `"CLIENT_ERROR"` if no response was received. |`outcome` _(required)_|Outcome of the HTTP client exchange. -|`exception` _(required)_|Name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |=== .High cardinality Keys @@ -338,7 +344,8 @@ Instrumentation uses the `org.springframework.web.reactive.function.client.Clien |`client.name` _(required)_|Client name derived from the request URI host. |`status` _(required)_|HTTP response raw status code, or `"IO_ERROR"` in case of `IOException`, or `"CLIENT_ERROR"` if no response was received. |`outcome` _(required)_|Outcome of the HTTP client exchange. -|`exception` _(required)_|Name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`error` _(required)_|Class name of the exception thrown during the exchange, or `"none"` if no exception happened. +|`exception` _(deprecated)_|Duplicates the `error` key and might be removed in the future. |=== .High cardinality Keys