From ff19b9e8212fae4296f63d307591d781d4613304 Mon Sep 17 00:00:00 2001 From: Peter Deng Date: Wed, 21 Dec 2022 04:38:39 +0800 Subject: [PATCH] Add table for OTLP/HTTP response code and client retry recommendation (#3028) --- CHANGELOG.md | 1 + specification/protocol/otlp.md | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 96131073223..66810603f5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -641,6 +641,7 @@ release. ([#2235](https://github.com/open-telemetry/opentelemetry-specification/pull/2235)) - Parameters for private key and its chain added ([#2370](https://github.com/open-telemetry/opentelemetry-specification/pull/2370)) +- Add table for OTLP/HTTP response code and client retry recommendation([#3028](https://github.com/open-telemetry/opentelemetry-specification/pull/3028)) ### SDK Configuration diff --git a/specification/protocol/otlp.md b/specification/protocol/otlp.md index 158e54c26fe..4d222c4c16b 100644 --- a/specification/protocol/otlp.md +++ b/specification/protocol/otlp.md @@ -547,6 +547,19 @@ defined in `Status` message schema. The server MAY include `Status.details` field with additional details. Read below about what this field can contain in each specific failure case. +The server SHOULD use HTTP response status codes to indicate +retryable and not-retryable errors for a particular erroneous situation. The +client SHOULD honour HTTP response status codes as retryable or not-retryable. +The requests that receive a response status code listed in following table SHOULD be retried. +All other `4xx` or `5xx` response status codes MUST NOT be retried. + +|HTTP response status code| +|---------| +|429 Too Many Requests| +|502 Bad Gateway| +|503 Service Unavailable| +|504 Gateway Timeout| + ##### Bad Data If the processing of the request fails because the request contains data that