Specificationv1.49.0
since v1.48.00 breaking9 notable14 editorial
From the upstream release notes
- Specify entity information via an environment variable.
- OTLP Exporters may allow devs to prepend a product identifier in User-Agent header.
- ⚠️ **IMPORTANT**: Extending the set of standard attribute value types is no longer a breaking change.
- Clarify in Composite Samplers OTEP the unreliable threshold case.
Notable9
- new rulerequiremententities/entity-propagation.md#character-encodingMUST added: All attribute values MUST be considered strings and characters outside the
baggage-octetrange MUST be percent-encoded following the W3C Baggage specification. - new rulerequiremententities/entity-propagation.md#character-encodingMUST added: The reserved characters
{}[]@;,=MUST be percent-encoded when they appear literally in attribute values: - new rulerequiremententities/entity-propagation.md#specifying-entity-information-via-an-environment-variableMUST added: The SDK that has access to environment variables MUST provide an
EnvEntityDetectorwhich will use theOTEL_ENTITIESenvironment variable to discover and associate defined entities with the resource. - new rulerequiremententities/entity-propagation.md#validation-requirementsMUST NOT added: Entity type MUST NOT be empty and MUST match the pattern
[a-zA-Z][a-zA-Z0-9.-] - new rulerequiremententities/entity-propagation.md#validation-requirementsMUST added: At least one identifying attribute MUST be present in the
{...}block - new rulerequiremententities/entity-propagation.md#validation-requirementsMUST NOT added: Attribute keys MUST NOT be empty and SHOULD follow OpenTelemetry semantic conventions
- new rulerequiremententities/entity-propagation.md#validation-requirementsMUST added: Schema URL, if present, MUST be a valid URI
- new rulerequirementprotocol/exporter.md#user-agentMAY added: Exporters MAY expose a configuration option to add a product identifier to the User-Agent header.
- new rulerequirementprotocol/exporter.md#user-agentSHOULD added: The resulting User-Agent SHOULD include the exporter's default User-Agent string.
Editorial14
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: The SDK SHOULD be resilient to malformed input and follow these error handling rules:
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Invalid syntax: If the environment variable contains invalid syntax, the SDK SHOULD log a warning and ignore the malformed portions while processing valid parts
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Missing required fields: If an entity is missing required fields (type or identifying attributes), the SDK SHOULD log a warning and skip that entity
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Duplicate entities: If multiple entities of the same type with identical identifying attributes are defined, the SDK SHOULD use the last occurrence and SHOULD log a warning
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Schema URL validation: If a schema URL is present but invalid, the SDK SHOULD log a warning and ignore the URL while processing the entity
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Conflicting identifying attributes: If two entities of the same type define different values for the same identifying attribute key, the SDK SHOULD log a warning and preserve only the last entity
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD added: Conflicting descriptive attributes: If two entities define different values for the same descriptive attribute key, the SDK SHOULD use the value from the last entity definition and SHOULD log a warning.
- new rulerequiremententities/entity-propagation.md#error-handlingSHOULD NOT added: The conflicting attributes SHOULD NOT be recorded for entities other than the last one
- new rulerequiremententities/entity-propagation.md#validation-requirementsSHOULD added: Entity types SHOULD follow existing OpenTelemetry entity naming conventions (e.g., "service", "host", "container", "k8s.pod")
- rewordedrequirementconfiguration/sdk-environment-variables.md#general-sdk-configurationMUST reworded: This setting has no effect on propagators configured through the OTELPROPAGATORS variable. | | OTELENTITIES | Entity information to be associated with the resource | | [String][] | See Entities SDK f...
- rewordedrequirementconfiguration/sdk-environment-variables.md#general-sdk-configurationMUST reworded: Invalid or unrecognized input MUST be logged and MUST be otherwise ignored, i.e. the implementation MUST behave as if OTELTRACESSAMPLER_ARG is not set. |
- addeddocumententities/entity-propagation.mdNew document: Entity Propagation (Development).
- rewrittensectioncommon/README.md#standard-attribute"Standard Attribute" substantially rewritten (1698 to 765 characters).
- rewrittensectionentities/README.md#overview"Overview" substantially rewritten (112 to 679 characters).