Skip to content

v0.22.0

Latest
Compare
Choose a tag to compare
@MrAlias MrAlias released this 23 May 21:31
· 49 commits to main since this release
v0.22.0
7d1c3cb

Overview

Added

  • Cache offsets for google.golang.org/grpc 1.72.0-dev. (#1849)
  • The go.opentelemtry.io/auto/pipeline package is added. This package contains interface definitions for types that want to handle the telemetry generated by auto-instrumentation. (#1859)
  • The go.opentelemtry.io/auto/pipeline/otelsdk package is added. This package a default handler that uses the OpenTelemetry Go SDK to handle telemetry generated by auto-instrumentation. (#1859)
  • The WithHandler function is added to configure Instrumentation in go.opentelemtry.io/auto with the desired handler implementation. (#1859)
  • The auto binary (built from auto/cli) can now be passed the target process PID directly using the -target-pid CLI option. (#1890)
  • The auto binary (built from auto/cli) can now be passed the path of the target process executable directly using the -target-exe CLI option. (#1890)
  • The auto binary (built from auto/cli) now resolves the target PID from the environment variable "OTEL_GO_AUTO_TARGET_PID" if no target options are passed. (#1890)
  • The auto binary (built from auto/cli) will now only resolve the target process executable from the environment variable "OTEL_GO_AUTO_TARGET_EXE" if no target options are passed and "OTEL_GO_AUTO_TARGET_PID" is not set. (#1890)
  • Cache offsets for golang.org/x/net 0.36.0. (#1940)
  • Cache offsets for google.golang.org/grpc 1.71.0. (#1940)
  • Cache offsets for Go 1.23.7. (#1940)
  • Cache offsets for Go 1.24.1. (#1940)
  • Cache offsets for go.opentelemetry.io/otel v1.35.0. (#1948)
  • Cache offsets for golang.org/x/net 0.37.0. (#1948)
  • Cache offsets for golang.org/x/net 0.38.0. (#2063)
  • Cache offsets for google.golang.org/grpc 1.71.1. (#2078)
  • Cache offsets for Go 1.23.8. (#2081)
  • Cache offsets for Go 1.24.2. (#2081)
  • Cache offsets for google.golang.org/grpc 1.73.0-dev. (#2091)
  • Cache offsets for golang.org/x/net 0.39.0. (#2107)
  • The new Multiplexer type is added to go.opentelemetry.io/auto/pipeline/otelsdk. This type is used to support multiple process instrumentation using the same telemetry pipeline. (#2016)
  • Cache offsets for google.golang.org/grpc 1.72.0. (#2190)
  • Cache offsets for golang.org/x/net 0.40.0. (#2281)
  • Cache offsets for Go 1.23.9. (#2292)
  • Cache offsets for Go 1.24.3. (#2292)
  • Cache offsets for github.com/segmentio/kafka-go 0.4.48. (#2319)
  • Cache offsets for google.golang.org/grpc 1.71.2. (#2319)
  • Cache offsets for google.golang.org/grpc 1.72.1. (#2319)
  • Cache offsets for google.golang.org/grpc 1.74.0-dev. (#2337)
  • Cache offsets for go.opentelemetry.io/otel v1.36.0. (#2352)

Changed

  • The WithEnv function no longer parses OTEL_GO_AUTO_GLOBAL. This is included by default. (#1859)
  • The WithEnv function no longer parses OTEL_SERVICE_NAME or OTEL_TRACES_EXPORTER. Use the Handler from go.opentelemtry.io/auto/pipeline/otelsdk with its own WithEnv to replace functionality. (#1859)
  • Instrument spans created with the OpenTelemetry trace API from an empty context. (#2001)
  • Upgrade OpenTelemetry semantic conventions to v1.30.0. (#2032)
  • Modify how the pattern is fetch from net/http.Request. Now it uses Request.Pattern instead of Request.pat.str unless using go1.22, which continue using Request.pat.str. (#2090)

Removed

  • Build support for Go 1.22 has been removed. Use Go >= 1.23 to develop and build the project. (#1841)
  • The WithGlobal function is removed from go.opentelemtry.io/auto. This option is on by default. (#1859)
  • The WithServiceName function is removed from go.opentelemtry.io/auto. Use WithServiceName in go.opentelemtry.io/auto/pipeline/otelsdk along with WithHandler to replace functionality. (#1859)
  • The WithTraceExporter function is removed from go.opentelemtry.io/auto. Use WithTraceExporter in go.opentelemtry.io/auto/pipeline/otelsdk along with WithHandler to replace functionality. (#1859)
  • The WithResourceAttributes function is removed from go.opentelemtry.io/auto. Use WithResourceAttributes in go.opentelemtry.io/auto/pipeline/otelsdk along with WithHandler to replace functionality. (#1859)
  • Resolution of the environment variable "OTEL_GO_AUTO_TARGET_EXE" has been removed from WithEnv.
    Note, the built binary (auto/cli) still supports resolution and use of this value.
    If using the auto package directly, you will need to resolve this value yourself and pass the discovered process PID using WithPID. (#1890)
  • The WithTarget function is removed. The auto package no longer supports process discovery (note: the built binary (auto/cli) still supports process discovery). Once a target process has been identified, use WithPID to configure Instrumentation instead. (#1890)

Fixed

  • Fix spans parsing from eBPF for the legacy (go version < 1.24 otel-go < 1.33) otel global instrumentation. (#1960)
  • The process.runtime.version resource attribute is now the exact value returned from debug to match what OpenTelemetry semantic conventions recommend. (#1985)
  • Stop adding process.runtime.description to Resource to follow OpenTelemetry semantic conventions. (#1986)
  • Reset Kafka producer span underlying memory before each span. (#1937)
  • Stop pinning collector image in e2e tests. (#2072)
  • Fallback to avoid context propagation in kafka-go instrumentation if the kernel does not support bpf_probe_write_user. (#2105)
  • Make sure Go strings being read from eBPF are null terminated. (#1936)
  • Handle dynamic goroutine stack resizes in the autosdk and otel/trace probes. (#2263)

What's Changed

New Contributors

Full Changelog: v0.21.0...v0.22.0