Skip to content

Releases: open-telemetry/opentelemetry-go

Release v1.27.0/v0.49.0/v0.3.0

21 May 18:04
v1.27.0
5661ff0
Compare
Choose a tag to compare

This release includes the first beta release of the OpenTelemetry Logs Bridge API and SDK for Go.

Overview

Added

  • Add example for go.opentelemetry.io/otel/exporters/stdout/stdoutlog. (#5242)
  • Add RecordFactory in go.opentelemetry.io/otel/sdk/log/logtest to facilitate testing exporter and processor implementations. (#5258)
  • Add RecordFactory in go.opentelemetry.io/otel/log/logtest to facilitate testing bridge implementations. (#5263)
  • The count of dropped records from the BatchProcessor in go.opentelemetry.io/otel/sdk/log is logged. (#5276)
  • Add metrics in the otel-collector example. (#5283)
  • Add the synchronous gauge instrument to go.opentelemetry.io/otel/metric. (#5304)
    • An int64 or float64 synchronous gauge instrument can now be created from a Meter.
    • All implementations of the API (go.opentelemetry.io/otel/metric/noop, go.opentelemetry.io/otel/sdk/metric) are updated to support this instrument.
  • Add logs to go.opentelemetry.io/otel/example/dice. (#5349)

Changed

  • The Shutdown method of Exporter in go.opentelemetry.io/otel/exporters/stdout/stdouttrace ignores the context cancellation and always returns nil. (#5189)
  • The ForceFlush and Shutdown methods of the exporter returned by New in go.opentelemetry.io/otel/exporters/stdout/stdoutmetric ignore the context cancellation and always return nil. (#5189)
  • Apply the value length limits to Record attributes in go.opentelemetry.io/otel/sdk/log. (#5230)
  • De-duplicate map attributes added to a Record in go.opentelemetry.io/otel/sdk/log. (#5230)
  • go.opentelemetry.io/otel/exporters/stdout/stdoutlog won't print timestamps when WithoutTimestamps option is set. (#5241)
  • The go.opentelemetry.io/otel/exporters/stdout/stdoutlog exporter won't print AttributeValueLengthLimit and AttributeCountLimit fields now, instead it prints the DroppedAttributes field. (#5272)
  • Improved performance in the Stringer implementation of go.opentelemetry.io/otel/baggage.Member by reducing the number of allocations. (#5286)
  • Set the start time for last-value aggregates in go.opentelemetry.io/otel/sdk/metric. (#5305)
  • The Span in go.opentelemetry.io/otel/sdk/trace will record links without span context if either non-empty TraceState or attributes are provided. (#5315)
  • Upgrade all dependencies of go.opentelemetry.io/otel/semconv/v1.24.0 to go.opentelemetry.io/otel/semconv/v1.25.0. (#5374)

Fixed

  • Comparison of unordered maps for go.opentelemetry.io/otel/log.KeyValue and go.opentelemetry.io/otel/log.Value. (#5306)
  • Fix the empty output of go.opentelemetry.io/otel/log.Value in go.opentelemetry.io/otel/exporters/stdout/stdoutlog. (#5311)
  • Split the behavior of Recorder in go.opentelemetry.io/otel/log/logtest so it behaves as a LoggerProvider only. (#5365)
  • Fix wrong package name of the error message when parsing endpoint URL in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#5371)
  • Identify the Logger returned from the global LoggerProvider in go.opentelemetry.io/otel/log/global with its schema URL. (#5375)

What's Changed

  • sdk/log/logtest: Add RecordFactory by @pellared in #5258
  • log/logtest: add Record Factory by @dmathieu in #5263
  • stdoutlog: Do not print timestamps when WithoutTimestamps is set by @XSAM in #5241
  • Add example for stdoutlog by @XSAM in #5242
  • Remove context check on stdout exporters by @prasad-shirodkar in #5189
  • Fix flaky test TestBufferExporter/Shutdown/ContextCancelled by @XSAM in #5261
  • Add otlploggrpc exporter skeleton by @XSAM in #5246
  • build(deps): bump lycheeverse/lychee-action from 1.9.3 to 1.10.0 by @dependabot in #5266
  • chore: fix function names in comment by @dockercui in #5262
  • build(deps): bump go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp from 0.50.0 to 0.51.0 in /example/dice by @dependabot in #5265
  • docs: update variable name in documentation by @codeboten in #5270
  • Use empty resource when RecordFactory.Resource is nil by @MrAlias in #5264
  • Truncate and de-duplicate log attribute values by @MrAlias in #5230
  • Add changelog entry for #5230 by @MrAlias in #5277
  • docs: Add otlploghttp package in exporters README.md by @arukiidou in #5274
  • The stdoutlog exporter prints DroppedAttributes field instead of Limits fields by @XSAM in #5272
  • Test scope and resource transforms in otlploghttp by @MrAlias in #5278
  • Add README template to semconvkit by @MrAlias in #5279
  • Use docker compose in otel collector example by @XSAM in #5244
  • [chore] dependabot updates Sun May 5 15:58:12 UTC 2024 by @opentelemetrybot in #5300
  • build(deps): bump codecov/codecov-action from 4.3.0 to 4.3.1 by @dependabot in #5296
  • docs: Update Go logs status to alpha in README.md by @arukiidou in #5299
  • docs: Add logs exporters in README.md by @arukiidou in #5298
  • Use reflect to construct a Record in logtest by @MrAlias in #5275
  • Fix type error in float64 instrument documentation by @MrAlias in #5302
  • Fix HistogramConfig documentation by @MrAlias in #5301
  • feat: opt for concatenation instead of using fmt.Sprintf by @moisesvega in #5286
  • Emit attributes slices as their json representation by @dmathieu in #5159
  • Refactor exemplars to not use generic argument by @MrAlias in #5285
  • Upgrade default go verison to 1.22.3 by @XSAM in #5314
  • Log records dropped by the BatchProcessor by @MrAlias in #5276
  • Rename synchronous instrument names in global test by @MrAlias in #5303
  • chore: Configure Renovate by @renovate in #5309
  • chore(deps): update module github.com/golang/groupcache to v0.0.0-20210331224755-41bb18bfe9da by @renovate in #5320
  • chore(deps): update module google.golang.org/genproto/googleapis/api to v0.0.0-20240506185236-b8a5c65736ae by @renovate in #5321
  • chore(deps): update module gopkg.in/check.v1 to v1.0.0-20201130134442-10cb98267c6c by @renovate in #5326
  • chore(deps): update module google.golang.org/genproto/googleapis/rpc to v0.0.0-20240506185236-b8a5c65736ae by @renovate in #5325
  • fix(deps): update module golang.org/x/exp to v0.0.0-20240506185415-9bf2ced13842 by @renovate in #5327
  • chore(deps): update module github.com/prometheus/common to v0.53.0 by @renovate in #5332
  • chore(deps): update module golang.org/x/net to v0.25.0 by @renovate in #5335
  • fix(deps): update module google.golang.org/protobuf to v1.34.1 by @renovate in #5328
  • chore(deps): update module github.com/prometheus/procfs to v0.14.0 by @renovate in #5333
  • chore(deps): update module github.com/cespare/xxhash/v2 to v2.3.0 by @renovate in #5330
  • chore(deps): update module github.com/rogpeppe/go-internal to v1.12.0 by @renovate in #5334
  • fix(deps): update module github.com/golangci/golangci-lint to v1.58.1 by @renovate in #5340
  • Merge Span.AddLink tests by @perhapsmaple in #5115
  • exporters/otlp/otlptrace: fix incorrect documentation by @kevinburkesegment in #5098
  • Generate internal/retry in otlploggrpc by @XSAM in #5313
  • fix(deps): update module github.com/prometheus/client_golang to v1.19.1 by @renovate in #5341
  • chore(deps): update jaegertracing/all-in-one docker tag to v1.57 by @renovate in #5329...
Read more

Release v1.26.0/v0.48.0/v0.2.0-alpha

24 Apr 14:32
v1.26.0
9656d0a
Compare
Choose a tag to compare

Added

  • Add Recorder in go.opentelemetry.io/otel/log/logtest to facilitate testing the log bridge implementations. (#5134)
  • Add span flags to OTLP spans and links exported by go.opentelemetry.io/otel/exporters/otlp/otlptrace. (#5194)
  • Make the initial alpha release of go.opentelemetry.io/otel/sdk/log.
    This new module contains the Go implementation of the OpenTelemetry Logs SDK.
    This module is unstable and breaking changes may be introduced.
    See our versioning policy for more information about these stability guarantees. (#5240)
  • Make the initial alpha release of go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp.
    This new module contains an OTLP exporter that transmits log telemetry using HTTP.
    This module is unstable and breaking changes may be introduced.
    See our versioning policy for more information about these stability guarantees. (#5240)
  • Make the initial alpha release of go.opentelemetry.io/otel/exporters/stdout/stdoutlog.
    This new module contains an exporter prints log records to STDOUT.
    This module is unstable and breaking changes may be introduced.
    See our versioning policy for more information about these stability guarantees. (#5240)
  • The go.opentelemetry.io/otel/semconv/v1.25.0 package.
    The package contains semantic conventions from the v1.25.0 version of the OpenTelemetry Semantic Conventions. (#5254)

Changed

  • Update go.opentelemetry.io/proto/otlp from v1.1.0 to v1.2.0. (#5177)
  • Improve performance of baggage member character validation in go.opentelemetry.io/otel/baggage. (#5214)

Full Changelog: v1.25.0...v1.26.0

Release v1.25.0/v0.47.0/v0.0.8/v0.1.0-alpha

05 Apr 14:39
v1.25.0
6628407
Compare
Choose a tag to compare

Added

  • Add WithProxy option in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4906)
  • Add WithProxy option in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlptracehttp. (#4906)
  • Add AddLink method to the Span interface in go.opentelemetry.io/otel/trace. (#5032)
  • The Enabled method is added to the Logger interface in go.opentelemetry.io/otel/log.
    This method is used to notify users if a log record will be emitted or not. (#5071)
  • Add SeverityUndefined const to go.opentelemetry.io/otel/log.
    This value represents an unset severity level. (#5072)
  • Add Empty function in go.opentelemetry.io/otel/log to return a KeyValue for an empty value. (#5076)
  • Add go.opentelemetry.io/otel/log/global to manage the global LoggerProvider.
    This package is provided with the anticipation that all functionality will be migrate to go.opentelemetry.io/otel when go.opentelemetry.io/otel/log stabilizes.
    At which point, users will be required to migrage their code, and this package will be deprecated then removed. (#5085)
  • Add support for Summary metrics in the go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp and go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc exporters. (#5100)
  • Add otel.scope.name and otel.scope.version tags to spans exported by go.opentelemetry.io/otel/exporters/zipkin. (#5108)
  • Add support for AddLink to go.opentelemetry.io/otel/bridge/opencensus. (#5116)
  • Add String method to Value and KeyValue in go.opentelemetry.io/otel/log. (#5117)
  • Add Exemplar support to go.opentelemetry.io/otel/exporters/prometheus. (#5111)
  • Add metric semantic conventions to go.opentelemetry.io/otel/semconv/v1.24.0. Future semconv packages will include metric semantic conventions as well. (#4528)

Changed

  • SpanFromContext and SpanContextFromContext in go.opentelemetry.io/otel/trace no longer make a heap allocation when the passed context has no span. (#5049)
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc and go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc now create a gRPC client in idle mode and with "dns" as the default resolver using grpc.NewClient. (#5151)
    Because of that WithDialOption ignores grpc.WithBlock, grpc.WithTimeout, and grpc.WithReturnConnectionError.
    Notice that grpc.DialContext which was used before is now deprecated.

Fixed

  • Clarify the documentation about equivalence guarantees for the Set and Distinct types in go.opentelemetry.io/otel/attribute. (#5027)
  • Prevent default ErrorHandler self-delegation. (#5137)
  • Update all dependencies to address GO-2024-2687. (#5139)

Removed

Deprecated

  • Deprecate go.opentelemetry.io/otel/attribute.Sortable type. (#4734)
  • Deprecate go.opentelemetry.io/otel/attribute.NewSetWithSortable function. (#4734)
  • Deprecate go.opentelemetry.io/otel/attribute.NewSetWithSortableFiltered function. (#4734)

New Contributors

Full Changelog: v1.24.0...v1.25.0

Release v1.24.0/v0.46.0/v0.0.1-alpha

23 Feb 16:37
v1.24.0
e6e186b
Compare
Choose a tag to compare

This release is the last to support Go 1.20. The next release will require at least Go 1.21.

Added

  • Support Go 1.22. (#4890)
  • Add exemplar support to go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#4900)
  • Add exemplar support to go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4900)
  • The go.opentelemetry.io/otel/log module is added. This module includes OpenTelemetry Go's implementation of the Logs Bridge API. This module is in an alpha state, it is subject to breaking changes. See our versioning policy for more info. (#4961)

Fixed

  • Fix registration of multiple callbacks when using the global meter provider from go.opentelemetry.io/otel. (#4945)
  • Fix negative buckets in output of exponential histograms. (#4956)

New Contributors

Full Changelog: v1.23.1...v1.24.0

Release v1.23.1/v0.45.2

07 Feb 20:52
v1.23.1
c5b112f
Compare
Choose a tag to compare

Fixed

  • Register all callbacks passed during observable instrument creation instead of just the last one multiple times in go.opentelemetry.io/otel/sdk/metric. (#4888)

Release v1.23.0/v0.45.1

06 Feb 15:54
v1.23.0
e3eb3f7
Compare
Choose a tag to compare

This release contains the first stable, v1, release of the following modules:

  • go.opentelemetry.io/otel/bridge/opencensus
  • go.opentelemetry.io/otel/bridge/opencensus/test
  • go.opentelemetry.io/otel/example/opencensus
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
  • go.opentelemetry.io/otel/exporters/stdout/stdoutmetric

See our versioning policy for more information about these stability guarantees.

Added

  • Add WithEndpointURL option to the exporters/otlp/otlpmetric/otlpmetricgrpc, exporters/otlp/otlpmetric/otlpmetrichttp, exporters/otlp/otlptrace/otlptracegrpc and exporters/otlp/otlptrace/otlptracehttp packages. (#4808)
  • Experimental exemplar exporting is added to the metric SDK. See metric documentation for more information about this feature and how to enable it. (#4871)
  • ErrSchemaURLConflict is added to go.opentelemetry.io/otel/sdk/resource. This error is returned when a merge of two Resources with different (non-empty) schema URL is attempted. (#4876)

Changed

  • The Merge and New functions in go.opentelemetry.io/otel/sdk/resource now returns a partial result if there is a schema URL merge conflict. Instead of returning nil when two Resources with different (non-empty) schema URLs are merged the merged Resource, along with the new ErrSchemaURLConflict error, is returned. It is up to the user to decide if they want to use the returned Resource or not. It may have desired attributes overwritten or include stale semantic conventions. (#4876)

Fixed

  • Fix ContainerID resource detection on systemd when cgroup path has a colon. (#4449)
  • Fix go.opentelemetry.io/otel/sdk/metric to cache instruments to avoid leaking memory when the same instrument is created multiple times. (#4820)
  • Fix missing Mix and Max values for go.opentelemetry.io/otel/exporters/stdout/stdoutmetric by introducing MarshalText and MarshalJSON for the Extrema type in go.opentelemetry.io/sdk/metric/metricdata. (#4827)

New Contributors

Full Changelog: v1.22.0...v1.23.0

Release v1.23.0-rc.1

18 Jan 20:29
v1.23.0-rc.1
1e2555f
Compare
Choose a tag to compare
Release v1.23.0-rc.1 Pre-release
Pre-release

This is a release candidate for the v1.23.0 release. That release is expected to include the v1 release of the following modules:

  • go.opentelemetry.io/otel/bridge/opencensus
  • go.opentelemetry.io/otel/bridge/opencensus/test
  • go.opentelemetry.io/otel/example/opencensus
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
  • go.opentelemetry.io/otel/exporters/stdout/stdoutmetric

See our versioning policy for more information about these stability guarantees.

Release v1.22.0/v0.45.0

17 Jan 19:34
v1.22.0
279c549
Compare
Choose a tag to compare

Added

  • The go.opentelemetry.io/otel/semconv/v1.22.0 package.
    The package contains semantic conventions from the v1.22.0 version of the OpenTelemetry Semantic Conventions. (#4735)
  • The go.opentelemetry.io/otel/semconv/v1.23.0 package.
    The package contains semantic conventions from the v1.23.0 version of the OpenTelemetry Semantic Conventions. (#4746)
  • The go.opentelemetry.io/otel/semconv/v1.23.1 package.
    The package contains semantic conventions from the v1.23.1 version of the OpenTelemetry Semantic Conventions. (#4749)
  • The go.opentelemetry.io/otel/semconv/v1.24.0 package.
    The package contains semantic conventions from the v1.24.0 version of the OpenTelemetry Semantic Conventions. (#4770)
  • Add WithResourceAsConstantLabels option to apply resource attributes for every metric emitted by the Prometheus exporter. (#4733)
  • Experimental cardinality limiting is added to the metric SDK.
    See metric documentation for more information about this feature and how to enable it. (#4457)
  • Add NewMemberRaw and NewKeyValuePropertyRaw in go.opentelemetry.io/otel/baggage. (#4804)

Changed

  • Upgrade all use of go.opentelemetry.io/otel/semconv to use v1.24.0. (#4754)
  • Update transformations in go.opentelemetry.io/otel/exporters/zipkin to follow v1.24.0 version of the OpenTelemetry specification. (#4754)
  • Record synchronous measurements when the passed context is canceled instead of dropping in go.opentelemetry.io/otel/sdk/metric.
    If you do not want to make a measurement when the context is cancelled, you need to handle it yourself (e.g if ctx.Err() != nil). (#4671)
  • Improve go.opentelemetry.io/otel/trace.TraceState's performance. (#4722)
  • Improve go.opentelemetry.io/otel/propagation.TraceContext's performance. (#4721)
  • Improve go.opentelemetry.io/otel/baggage performance. (#4743)
  • Improve performance of the (*Set).Filter method in go.opentelemetry.io/otel/attribute when the passed filter does not filter out any attributes from the set. (#4774)
  • Member.String in go.opentelemetry.io/otel/baggage percent-encodes only when necessary. (#4775)
  • Property.Value in go.opentelemetry.io/otel/baggage now returns a raw string instead of a percent-encoded value. (#4804)

Fixed

  • Fix Parse in go.opentelemetry.io/otel/baggage to validate member value before percent-decoding. (#4755)
  • Fix whitespace encoding of Member.String in go.opentelemetry.io/otel/baggage. (#4756)
  • Fix baggage item key so that it is not canonicalized in go.opentelemetry.io/otel/bridge/opentracing. (#4776)
  • Fix go.opentelemetry.io/otel/bridge/opentracing to properly handle baggage values that requires escaping during propagation. (#4804)
  • Fix a bug where using multiple readers resulted in incorrect asynchronous counter values in go.opentelemetry.io/otel/sdk/metric. (#4742)

Release v1.21.0/v0.44.0

16 Nov 20:15
v1.21.0
98b32a6
Compare
Choose a tag to compare

Removed

  • Remove the deprecated go.opentelemetry.io/otel/bridge/opencensus.NewTracer. (#4706)
  • Remove the deprecated go.opentelemetry.io/otel/exporters/otlp/otlpmetric module. (#4707)
  • Remove the deprecated go.opentelemetry.io/otel/example/view module. (#4708)
  • Remove the deprecated go.opentelemetry.io/otel/example/fib module. (#4723)

Fixed

  • Do not parse non-protobuf responses in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4719)
  • Do not parse non-protobuf responses in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#4719)

Release v1.20.0/v0.43.0

10 Nov 16:49
v1.20.0
85e4c46
Compare
Choose a tag to compare

This release brings a breaking change for custom trace API implementations. Some interfaces (TracerProvider, Tracer, Span) now embed the go.opentelemetry.io/otel/trace/embedded types. Implementors need to update their implementations based on what they want the default behavior to be. See the "API Implementations" section of the trace API package documentation for more about how to accomplish this.

Added

  • Add go.opentelemetry.io/otel/bridge/opencensus.InstallTraceBridge, which installs the OpenCensus trace bridge, and replaces opencensus.NewTracer. (#4567)
  • Add scope version to trace and metric bridges in go.opentelemetry.io/otel/bridge/opencensus. (#4584)
  • Add the go.opentelemetry.io/otel/trace/embedded package to be embedded in the exported trace API interfaces. (#4620)
  • Add the go.opentelemetry.io/otel/trace/noop package as a default no-op implementation of the trace API. (#4620)
  • Add context propagation in go.opentelemetry.io/otel/example/dice. (#4644)
  • Add view configuration to go.opentelemetry.io/otel/example/prometheus. (#4649)
  • Add go.opentelemetry.io/otel/metric.WithExplicitBucketBoundaries, which allows defining default explicit bucket boundaries when creating histogram instruments. (#4603)
  • Add Version function in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#4660)
  • Add Version function in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4660)
  • Add Summary, SummaryDataPoint, and QuantileValue to go.opentelemetry.io/sdk/metric/metricdata. (#4622)
  • go.opentelemetry.io/otel/bridge/opencensus.NewMetricProducer now supports exemplars from OpenCensus. (#4585)
  • Add support for WithExplicitBucketBoundaries in go.opentelemetry.io/otel/sdk/metric. (#4605)
  • Add support for Summary metrics in go.opentelemetry.io/otel/bridge/opencensus. (#4668)

Deprecated

  • Deprecate go.opentelemetry.io/otel/bridge/opencensus.NewTracer in favor of opencensus.InstallTraceBridge. (#4567)
  • Deprecate go.opentelemetry.io/otel/example/fib package is in favor of go.opentelemetry.io/otel/example/dice. (#4618)
  • Deprecate go.opentelemetry.io/otel/trace.NewNoopTracerProvider.
    Use the added NewTracerProvider function in go.opentelemetry.io/otel/trace/noop instead. (#4620)
  • Deprecate go.opentelemetry.io/otel/example/view package in favor of go.opentelemetry.io/otel/example/prometheus. (#4649)
  • Deprecate go.opentelemetry.io/otel/exporters/otlp/otlpmetric. (#4693)

Changed

  • go.opentelemetry.io/otel/bridge/opencensus.NewMetricProducer returns a *MetricProducer struct instead of the metric.Producer interface. (#4583)
  • The TracerProvider in go.opentelemetry.io/otel/trace now embeds the go.opentelemetry.io/otel/trace/embedded.TracerProvider type.
    This extends the TracerProvider interface and is is a breaking change for any existing implementation.
    Implementors need to update their implementations based on what they want the default behavior of the interface to be.
    See the "API Implementations" section of the go.opentelemetry.io/otel/trace package documentation for more information about how to accomplish this. (#4620)
  • The Tracer in go.opentelemetry.io/otel/trace now embeds the go.opentelemetry.io/otel/trace/embedded.Tracer type.
    This extends the Tracer interface and is is a breaking change for any existing implementation.
    Implementors need to update their implementations based on what they want the default behavior of the interface to be.
    See the "API Implementations" section of the go.opentelemetry.io/otel/trace package documentation for more informationabout how to accomplish this. (#4620)
  • The Span in go.opentelemetry.io/otel/trace now embeds the go.opentelemetry.io/otel/trace/embedded.Span type.
    This extends the Span interface and is is a breaking change for any existing implementation.
    Implementors need to update their implementations based on what they want the default behavior of the interface to be.
    See the "API Implementations" section of the go.opentelemetry.io/otel/trace package documentation for more information about how to accomplish this. (#4620)
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc does no longer depend on go.opentelemetry.io/otel/exporters/otlp/otlpmetric. (#4660)
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp does no longer depend on go.opentelemetry.io/otel/exporters/otlp/otlpmetric. (#4660)
  • Retry for 502 Bad Gateway and 504 Gateway Timeout HTTP statuses in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4670)
  • Retry for 502 Bad Gateway and 504 Gateway Timeout HTTP statuses in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#4670)
  • Retry for RESOURCE_EXHAUSTED only if RetryInfo is returned in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#4669)
  • Retry for RESOURCE_EXHAUSTED only if RetryInfo is returned in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#4669)
  • Retry temporary HTTP request failures in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#4679)
  • Retry temporary HTTP request failures in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#4679)

Fixed

  • Fix improper parsing of characters such us +, / by Parse in go.opentelemetry.io/otel/baggage as they were rendered as a whitespace. (#4667)
  • Fix improper parsing of characters such us +, / passed via OTEL_RESOURCE_ATTRIBUTES in go.opentelemetry.io/otel/sdk/resource as they were rendered as a whitespace. (#4699)
  • Fix improper parsing of characters such us +, / passed via OTEL_EXPORTER_OTLP_HEADERS and OTEL_EXPORTER_OTLP_METRICS_HEADERS in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc as they were rendered as a whitespace. (#4699)
  • Fix improper parsing of characters such us +, / passed via OTEL_EXPORTER_OTLP_HEADERS and OTEL_EXPORTER_OTLP_METRICS_HEADERS in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp as they were rendered as a whitespace. (#4699)
  • Fix improper parsing of characters such us +, / passed via OTEL_EXPORTER_OTLP_HEADERS and OTEL_EXPORTER_OTLP_TRACES_HEADERS in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlptracegrpc as they were rendered as a whitespace. (#4699)
  • Fix improper parsing of characters such us +, / passed via OTEL_EXPORTER_OTLP_HEADERS and OTEL_EXPORTER_OTLP_TRACES_HEADERS in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlptracehttp as they were rendered as a whitespace. (#4699)
  • In go.opentelemetry.op/otel/exporters/prometheus, the exporter no longer Collects metrics after Shutdown is invoked. (#4648)
  • Fix documentation for WithCompressor in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#4695)
  • Fix documentation for WithCompressor in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#4695)