github open-telemetry/opentelemetry-go v1.29.0
Release v1.29.0/v0.51.0/v0.5.0

latest releases: v1.32.0, schema/v0.0.11, exporters/stdout/stdoutlog/v0.8.0...
2 months ago

Overview

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

Added

  • Add MacOS ARM64 platform to the compatibility testing suite. (#5577)
  • Add InstrumentationScope field to SpanStub in go.opentelemetry.io/otel/sdk/trace/tracetest, as a replacement for the deprecated InstrumentationLibrary. (#5627)
  • Make the initial release of go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. This new module contains an OTLP exporter that transmits log telemetry using gRPC. This module is unstable and breaking changes may be introduced. See our versioning policy for more information about these stability guarantees. (#5629)
  • Add Walk function to TraceState in go.opentelemetry.io/otel/trace to iterate all the key-value pairs. (#5651)
  • Bridge the trace state in go.opentelemetry.io/otel/bridge/opencensus. (#5651)
  • Zero value of SimpleProcessor in go.opentelemetry.io/otel/sdk/log no longer panics. (#5665)
  • The FilterProcessor interface type is added in go.opentelemetry.io/otel/sdk/log/internal/x. This is an optional and experimental interface that log Processors can implement to instruct the Logger if a Record will be processed or not. It replaces the existing Enabled method that is removed from the Processor interface itself. It does not fall within the scope of the OpenTelemetry Go versioning and stability policy and it may be changed in backwards incompatible ways or removed in feature releases. (#5692)
  • Support Go 1.23. (#5720)

Changed

  • NewMemberRaw, NewKeyProperty and NewKeyValuePropertyRaw in go.opentelemetry.io/otel/baggage allow UTF-8 string in key. (#5132)
  • Processor.OnEmit in go.opentelemetry.io/otel/sdk/log now accepts a pointer to Record instead of a value so that the record modifications done in a processor are propagated to subsequent registered processors. (#5636)
  • SimpleProcessor.Enabled in go.opentelemetry.io/otel/sdk/log now returns false if the exporter is nil. (#5665)
  • Update the concurrency requirements of Exporter in go.opentelemetry.io/otel/sdk/log. (#5666)
  • SimpleProcessor in go.opentelemetry.io/otel/sdk/log synchronizes OnEmit calls. (#5666)
  • The Processor interface in go.opentelemetry.io/otel/sdk/log no longer includes the Enabled method. See the FilterProcessor interface type added in go.opentelemetry.io/otel/sdk/log/internal/x to continue providing this functionality. (#5692)
  • The SimpleProcessor type in go.opentelemetry.io/otel/sdk/log is no longer comparable. (#5693)
  • The BatchProcessor type in go.opentelemetry.io/otel/sdk/log is no longer comparable. (#5693)

Fixed

  • Correct comments for the priority of the WithEndpoint and WithEndpointURL options and their corresponding environment variables in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#5584)
  • Pass the underlying error rather than a generic retry-able failure in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp, go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp and go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#5541)
  • Correct the Tracer, Meter, and Logger names used in go.opentelemetry.io/otel/example/dice. (#5612)
  • Correct the Tracer names used in go.opentelemetry.io/otel/example/namedtracer. (#5612)
  • Correct the Tracer name used in go.opentelemetry.io/otel/example/opencensus. (#5612)
  • Correct the Tracer and Meter names used in go.opentelemetry.io/otel/example/otel-collector. (#5612)
  • Correct the Tracer names used in go.opentelemetry.io/otel/example/passthrough. (#5612)
  • Correct the Meter name used in go.opentelemetry.io/otel/example/prometheus. (#5612)
  • Correct the Tracer names used in go.opentelemetry.io/otel/example/zipkin. (#5612)
  • Correct comments for the priority of the WithEndpoint and WithEndpointURL options and their corresponding environment variables in go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc and go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#5641)
  • Correct comments for the priority of the WithEndpoint and WithEndpointURL options and their corresponding environment variables in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#5650)
  • Stop percent encoding header environment variables in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc, go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp, go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc and go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp (#5705)
  • Remove invalid environment variable header keys in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc, go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp, go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc and go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp (#5705)

Removed

  • The Enabled method of the SimpleProcessor in go.opentelemetry.io/otel/sdk/log is removed. (#5692)
  • The Enabled method of the BatchProcessor in go.opentelemetry.io/otel/sdk/log is removed. (#5692)

What's Changed

  • Upgrade Go versions in CI by @MrAlias in #5570
  • fix(deps): update module google.golang.org/grpc to v1.65.0 by @renovate in #5568
  • fix(deps): update module go.opentelemetry.io/otel/sdk/log to v0.4.0 by @renovate in #5571
  • fix(deps): update module go.opentelemetry.io/contrib/bridges/otelslog to v0.3.0 by @renovate in #5573
  • fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.53.0 by @renovate in #5574
  • Implement otlploggrpc gRPC client by @XSAM in #5572
  • chore(deps): update module golang.org/x/sys to v0.22.0 by @renovate in #5576
  • chore(deps): update module golang.org/x/net to v0.27.0 by @renovate in #5581
  • Enable benchmark summary for release by @XSAM in #5527
  • sdk/log: Add package example by @pellared in #5579
  • [chore] Update macOS runners by @pellared in #5577
  • fix(deps): update module golang.org/x/tools to v0.23.0 by @renovate in #5583
  • fix(deps): update golang.org/x/exp digest to 46b0784 by @renovate in #5585
  • baggage: Fix invalid percent-encoded octet sequences by @santileira in #5528
  • Extend trace config benchmarks to run each option individually by @dmathieu in #5566
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 654c5fe by @renovate in #5587
  • Protect released changelog in CI by @XSAM in #5560
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 4ad9e85 by @renovate in #5588
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 4ad9e85 by @renovate in #5589
  • Correct the comment for the priority of options and environments on otlptracehttp by @XSAM in #5584
  • [chore] Add missing changelog entry for #5577 by @pellared in #5586
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 40e1e62 by @renovate in #5592
  • Implement otlploggrpc exporter by @XSAM in #5582
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 40e1e62 by @renovate in #5593
  • fix(deps): update module go.opentelemetry.io/build-tools/crosslink to v0.14.0 by @renovate in #5594
  • fix(deps): update module go.opentelemetry.io/build-tools/gotmpl to v0.14.0 by @renovate in #5595
  • fix(deps): update module go.opentelemetry.io/build-tools/multimod to v0.14.0 by @renovate in #5596
  • fix(deps): update module go.opentelemetry.io/build-tools/semconvgen to v0.14.0 by @renovate in #5597
  • chore(deps): update prom/prometheus docker tag to v2.53.1 by @renovate in #5603
  • chore(deps): update jaegertracing/all-in-one docker tag to v1.59 by @renovate in #5605
  • Add TestSpanStartConfigAttributeMutability by @MrAlias in #5591
  • log: Add missing notice to Bytes, Slice, Map doc comment by @pellared in #5598
  • Add TestConfigLinkMutability by @MrAlias in #5604
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 46eb208 by @renovate in #5610
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 46eb208 by @renovate in #5611
  • sdk/log: Refine BenchmarkProcessor by @pellared in #5607
  • sdk/log: Simple processor may be useful for production by @pellared in #5578
  • Fix verify_released_changelog.sh by @XSAM in #5616
  • Add resource metrics transform benchmarks by @dmathieu in #5602
  • Add benchmark for turning readonly spans into their proto struct by @dmathieu in #5601
  • sdk/log: Package documentation by @pellared in #5609
  • Document Logger name and version recommendations by @MrAlias in #5613
  • Add comment to other observable instruments about repeated creation with callbacks by @dashpole in #5606
  • Update example instrumentation names by @MrAlias in #5612
  • Add integration tests for otlploggrpc exporter by @XSAM in #5614
  • Add example test for otlploggrpc by @XSAM in #5615
  • Add entry for logs in go.opentelemetry.io/otel package documentation by @MrAlias in #5621
  • Refactor Batch Processor benchmark to really test OnEnd by @dmathieu in #5600
  • Separate trace API components into own files by @MrAlias in #5620
  • fix(deps): update golang.org/x/exp digest to e3f2596 by @renovate in #5624
  • fix(deps): update module golang.org/x/vuln to v1.1.3 by @renovate in #5625
  • chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.105.0 by @renovate in #5626
  • Add otlploggrpc package documentation by @XSAM in #5622
  • Parse errormsgs in retryable status codes by @pree-dew in #5541
  • Include otlploggrpc module into the experimental-logs by @XSAM in #5629
  • Rely on net/http error content rather than unreliable deadline exceeded by @dmathieu in #5631
  • fix(deps): update golang.org/x/exp digest to 8a7402a by @renovate in #5633
  • baggage: fix grammar error by @kevinburkesegment in #5634
  • Fix otlp grpc exporters doc to require a scheme by @dmathieu in #5632
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to d784300 by @renovate in #5638
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to d784300 by @renovate in #5637
  • Use actuated runner to run benchmark by @XSAM in #5635
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to e6d459c by @renovate in #5639
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to e6d459c by @renovate in #5640
  • Allow relying on InstrumentationScope in SpanStub and fix remaining deprecation issues by @dmathieu in #5627
  • Correct the comment for the priority of options and environments on otlpmetric by @XSAM in #5641
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 93522f1 by @renovate in #5646
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 93522f1 by @renovate in #5647
  • chore(deps): update module github.com/grpc-ecosystem/grpc-gateway/v2 to v2.21.0 by @renovate in #5648
  • fix(deps): update github.com/opentracing-contrib/go-grpc digest to 9dec25a by @renovate in #5643
  • typo: fix docs by @intiramisu in #5649
  • Enable all benchmarks in CI by @XSAM in #5644
  • chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.106.0 by @renovate in #5654
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to b1a4ccb by @renovate in #5656
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to b1a4ccb by @renovate in #5655
  • Fix benchmark ci by @XSAM in #5657
  • [chore] Add asasalint linter by @pellared in #5653
  • [chore] Add bodyclose linter by @pellared in #5659
  • chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.106.1 by @renovate in #5662
  • [chore] Remove toolchain from go.mod by @pellared in #5661
  • sdk/log: Processor.OnEmit accetps a Record pointer by @pellared in #5636
  • Fix membership link by @XSAM in #5667
  • Correct the comment for the priority of options and environments on otlploghttp by @XSAM in #5650
  • Fix benchmark that does not compare the exact result from the previous commit by @XSAM in #5664
  • sdk/log: SimpleProcessor to not panic for zero value by @pellared in #5665
  • chore(deps): update module golang.org/x/sys to v0.23.0 by @renovate in #5669
  • Fix interfaces doc formatting by @pellared in #5658
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 2c9e96a by @renovate in #5673
  • fix(deps): update module golang.org/x/tools to v0.24.0 by @renovate in #5677
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 2c9e96a by @renovate in #5672
  • chore(deps): update jaegertracing/all-in-one docker tag to v1.60 by @renovate in #5675
  • chore(deps): update module golang.org/x/net to v0.28.0 by @renovate in #5676
  • Fix stdoutlog import path by @mikelolasagasti in #5670
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 573a115 by @renovate in #5697
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 573a115 by @renovate in #5698
  • fix(deps): update golang.org/x/exp digest to 0cdaa3a by @renovate in #5699
  • chore(deps): update module golang.org/x/sys to v0.24.0 by @renovate in #5700
  • sdk/log: SimpleProcessor synchronizes OnEmit calls by @pellared in #5666
  • Ensure exported struct in sdk/log are not comparable by @MrAlias in #5693
  • Use self hosted runner to run benchmark by @XSAM in #5695
  • Save benchmark cache even the job is failed by @XSAM in #5694
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 8ffd90a by @renovate in #5708
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 8ffd90a by @renovate in #5709
  • baggage: Accept non-ASCII keys by @XSAM in #5132
  • Stabilize benchmark result of BenchmarkValueEqual by @XSAM in #5717
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to ddb44da by @renovate in #5715
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to ddb44da by @renovate in #5714
  • chore(deps): update module github.com/grpc-ecosystem/grpc-gateway/v2 to v2.22.0 by @renovate in #5718
  • fix(deps): update module github.com/prometheus/client_golang to v1.20.0 by @renovate in #5713
  • chore(deps): update prom/prometheus docker tag to v2.54.0 by @renovate in #5701
  • chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.107.0 by @renovate in #5710
  • chore(deps): update golang docker tag to v1.23 by @renovate in #5712
  • fix(deps): update module github.com/prometheus/client_golang to v1.20.1 by @renovate in #5721
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to 278611b by @renovate in #5723
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 278611b by @renovate in #5724
  • Add support for go 1.23 by @dmathieu in #5720
  • Bugfix: OTLP exporters should not percent decode the key when parsing HEADERS env vars by @zhihali in #5705
  • OpenCensus bridge to support TraceState by @jianwu in #5651
  • Move log.Processor.Enabled to independent FilterProcessor interfaced type by @MrAlias in #5692
  • chore(deps): update google.golang.org/genproto/googleapis/api digest to fc7c04a by @renovate in #5726
  • chore(deps): update google.golang.org/genproto/googleapis/rpc digest to fc7c04a by @renovate in #5727
  • fix(deps): update golang.org/x/exp digest to 778ce7b by @renovate in #5728
  • fix(deps): update golang.org/x/exp digest to 9b4947d by @renovate in #5729
  • fix(deps): update module github.com/golangci/golangci-lint to v1.60.2 by @renovate in #5711
  • fix(deps): update module github.com/golangci/golangci-lint to v1.60.3 by @renovate in #5730
  • Release v1.29.0/v0.51.0/v0.5.0 by @MrAlias in #5732

New Contributors

Full Changelog: v1.28.0...v1.29.0

Don't miss a new opentelemetry-go release

NewReleases is sending notifications on new releases.