Please update changelog as part of any significant pull request. Place short description of your change into "Unreleased" section. As part of release process content of "Unreleased" section content will generate release notes for the release.
New:
- Default propagators in un-configured API must be no-op (#930).
- Define resource mapping for Jaeger exporters (#891)
- Add resource semantic conventions for operating systems (#693)
- Add semantic convention for source code attributes (#901)
- Add semantic conventions for outgoing Function as a Service (FaaS) invocations (#862)
- Add resource semantic convention for deployment environment (#606)
- Clarification of the behavior of the Trace API, re: context propagation, in the absence of an installed SDK
- Add API and semantic conventions for recording exceptions as Span Events (#697)
- Update the header name for otel baggage, and version date (#981)
Updates:
- Renamed
CorrelationContext
toBaggage
: (#857) - Add semantic convention for NGINX custom HTTP 499 status code.
- Adapt semantic conventions for the span name of messaging systems (#690)
- Remove lazy Event and Link API from Span interface
(#840)
- SIGs are recommended to remove any existing implementation of the lazy APIs to avoid conflicts/breaking changes in case they will be reintroduced to the spec in future.
- Provide clear definitions for readable and read/write span interfaces in the
SDK
(#669)
- SpanProcessors must provide read/write access at least in OnStart.
- Specify how
Probability
sampler is used withParentOrElse
sampler. - Clarify event timestamp origin and range (#839)
- Clean up api-propagators.md, by extending documentation and removing redundant sections (#577)
- Rename HTTPText propagator to TextMap (#793)
- Rename ParentOrElse sampler to ParentBased and add multiple delegate samplers (#610)
- Rename ProbabilitySampler to TraceIdRatioBasedSampler and add requirements (#611)
- Version attributes no longer have a prefix such as semver: (#873)
- Add semantic conventions for process runtime (#882)
- Use hex encoding for trace id and span id fields in OTLP JSON encoding: (#911)
- Explicitly specify the SpanContext APIs IsValid and IsRemote as required (#914)
- Remove obsolete
http.status_text
from semantic conventions (#972) - SDK: Rename the
Decision
values forSamplingResult
s toDROP
,RECORD_ONLY
andRECORD_AND_SAMPLE
for consistency (#938, #956)
New:
- Add span attribute to indicate cold starts of Function as a Service executions (#650)
- Add conventions for naming of exporter packages (#629)
- Add semantic conventions for container id (#673)
- Add semantic conventions for HTTP content length (#641)
- Add semantic conventions for process resource (#635)
- Add peer.service to provide a user-configured name for a remote service (#652)
Updates:
- Improve root Span description (#645)
- Extend semantic conventions for RPC and allow non-gRPC calls (#604)
- Revise and extend semantic conventions for databases (#575)
- Clarify Tracer vs TracerProvider in tracing API and SDK spec.
(#619)
Most importantly:
- Configuration should be stored not per Tracer but in the TracerProvider.
- Active spans are not per Tracer.
- Do not set any value in Context upon failed extraction (#671)
- Clarify semantic conventions around span start and end time (#592)
- Define Log Data Model.
- Remove SpanId from Sampler input.
- Clarify what it will mean for a vendor to "support OpenTelemetry".
- Clarify Tracers should reference an InstrumentationLibrary rather than a Resource.
- Replace ALWAYS_PARENT sampler with a composite ParentOrElse sampler.
- Incorporate old content on metrics calling conventions, label sets.
- Update api-metrics-user.md and api-metrics-meter.md with the latest metrics API.
- Normalize Instrumentation term for instrumentations.
- Change w3c correlation context to custom header.
- OTEP-83 Introduce the notion of InstrumentationLibrary.
- OTEP-88 Metrics API instrument foundation.
- OTEP-91 Logs vocabulary.
- OTEP-92 Logs Vision.
- OTEP-90 Remove LabelSet from the metrics API.
- OTEP-98 Explain the metric instruments.
- OTEP-99 OTLP/HTTP: HTTP Transport Extension for OTLP.
- Define handling of null and empty attribute values.
- Rename Setter.put to Setter.set
- Add glossary for typically misused terms.
- Clarify that resources are immutable.
- Clarify that SpanContext.IsRemote is false on remote children.
- Move specifications into sub-directories per signal.
- Remove references to obsolete
peer.*
attributes. - Span semantic conventions for for messaging systems.
- Span semantic conventions for function as a service.
- Remove the handling of retries from trace exporters.
- Remove Metrics' default keys.
- Add some clarifying language to the semantics of metric instrument naming.
- Allow injectors and extractors to be separate interfaces.
- Add an explanation on why Context Restore operation is needed.
- Document special Zipkin conversion cases.
- OTEP-0059 Add OTLP Trace Data Format specification.
- OTEP-0066 Separate Layer for Context Propagation.
- OTEP-0070 Rename metric instrument "Handles" to "Bound Instruments".
- OTEP-0072 Metric Observer instrument specification (refinement).
- OTEP-0080 Remove the Metric Gauge instrument, recommend use of other instruments.
- Update 0003-measure-metric-type to match current Specification.
- Update 0009-metric-handles to match current Specification.
- Clarify named tracers and meters.
- Remove SamplingHint from the Sampling OTEP (OTEP-0006).
- Remove component attribute.
- Allow non-string Resource label values.
- Allow array values for attributes.
- Add service version to Resource attributes.
- Add general, general identity, network and VM image attribute conventions.
- Add a section on transformation to Zipkin Spans.
- Add a section on SDK default configuration.
- Enhance semantic conventions for HTTP/RPC.
- Provide guidelines for low-cardinality span names.
- SDK Tracer: Replace TracerFactory with TracerProvider.
- Update Resource to be in the SDK.
- OTEP-0001 Added Auto-Instrumentation.
- OTEP-0002: Removed SpanData interface in favor of Span Start and End options.
- OTEP-0003 Consolidatesd pre-aggregated and raw metrics APIs.
- OTEP-0008 Added Metrics Observers API.
- OTEP-0009 Added Metrics Handle API.
- OTEP-0010 Rename "Cumulative" to "Counter" in the Metrics API.
- OTEP-006 Moved sampling from the API tp the SDK.
- OTEP-0007 Moved support for out-of-band telemetry from the API to the SDK.
- OTEP-0016 Added named providers for Tracers and Meters.
- Added design goals and requirements for a telemetry data exchange protocol.
- Added a Span Processor interface for intercepting span start and end invocations.
- Added a Span Exporter interface for processing batches of spans.
- Replaced DistributedContext.GetIterator with GetEntries.
- Added clarifications and adjustments to improve cross-language applicability.
- Added a specification for SDK configuration.
- Added API proposal for the converged OpenTracing/OpenCensus project is complete.