Skip to content

Add GetAll to TextMapPropagator Extraction #6652

@MrAlias

Description

@MrAlias

Support the stabilized specification:

GetAll

For many language implementations, the GetAll function will be added after the stable release of Getter.
For these languages, requiring implementations of Getter to include GetAll constitutes a breaking change
since instrumentation which previously functioned would fail. Language implementations should be cognizant
of this, and add GetAll in a way that retains backwards compatibility. For example, by providing a default
GetAll implementation based on Get, or by creating an extended Getter type.

If explicitly implemented, the GetAll function MUST return all values of the given propagation key.
It SHOULD return them in the same order as they appear in the carrier.
If the key doesn't exist, it SHOULD return an empty collection.

Required arguments:

  • the carrier of propagation fields, such as an HTTP request.
  • the key of the field.

The GetAll function is responsible for handling case sensitivity. If the getter is intended to work with an HTTP request object, the getter MUST be case insensitive.

Prior Art

#5973

Metadata

Metadata

Assignees

Labels

area:propagatorsPart of OpenTelemetry context propagation

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions