Skip to content

Latest commit

 

History

History
141 lines (108 loc) · 10.8 KB

CHANGELOG.md

File metadata and controls

141 lines (108 loc) · 10.8 KB

Changelog

All notable changes to OpenTelemetry Go Automatic Instrumentation are documented in this file.

The format is based on Keep a Changelog.

OpenTelemetry Go Automatic Instrumentation adheres to Semantic Versioning.

v0.3.0-alpha - 2023-09-12

Added

  • Add database/sql instrumentation (#240)
  • Support Go 1.21. (#264)

Changed

  • The function signature of "go.opentelemetry.io/auto/offsets-tracker/downloader".DownloadBinary has changed. It now has an additional flag indicating whether it'll build a dummy app for Go stdlib packages or not. ([#256]open-telemetry#256)
  • The function signature of "go.opentelemetry.io/auto/offsets-tracker/target".New has changed. It now accepts a flag to determine if the returned Data is from the Go stdlib or not. ([#256]open-telemetry#256)
  • Use UPROBE_RETURN to declare the common uprobe return logic (finding the corresponding context, setting up end time, and sending the event via perf buffer) ([#257]open-telemetry#257)
  • BASE_SPAN_PROPERTIES as common fields (start time, end time, SpanContext and ParentSpanContext) for all instrumentations events (consistent between C and Go structs). ([#257]open-telemetry#257)
  • Header guards in eBPF code. ([#257]open-telemetry#257)

Fixed

  • Fix context propagation across different goroutines. (#118)
  • The offset tracker can once again build binaries for the Go stdlib. ([#256]open-telemetry#256)

Deprecated

  • The go.opentelemetry.io/auto/offsets-tracker module is deprecated. It will be removed in the following release. (#281)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/github.com/gorilla/mux package is deprecated. It will be removed in the following release. (#262)
  • The go.opentelemetry.io/auto/test/e2e/gorillamux module is deprecated. It will be removed in the following release. (#262)
  • The go.opentelemetry.io/auto/pkg/inject package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/errors package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/process package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/process/ptrace package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/opentelemetry package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/net/http/client package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/net/http/server package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/github.com/gin-gonic/gin package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/github.com/gorilla/mux package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/google/golang/org/grpc package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpf/google/golang/org/grpc/server package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/utils package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/context package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/allocator package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/bpffs package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/instrumentors/events package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/pkg/log package is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/test/e2e/gin module is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/test/e2e/gorillamux module is deprecated. It will be removed in the following release. (#282)
  • The go.opentelemetry.io/auto/test/e2e/nethttp module is deprecated. It will be removed in the following release. (#282)

v0.2.2-alpha - 2023-07-12

Added

  • The net/http client instrumentor. (#91)
  • Context propagation to the net/http server instrumentation. (#92)
  • Simplified example of an HTTP service in go.opentelemtry.io/auto/examples/rolldice. (#195)

Changed

  • Upgrade OpenTelemetry semantic conventions to v1.18.0. (#162)
  • Remove the HTTP path from span names in net/http, gin-gonic/gin, and gorilla/mux instrumentations. (#161)
  • Update generated offsets. (#186)
  • Reduce Docker image size by using different base image. (#182)
  • Support for multiple processes in BPF FS. (#211)

v0.2.1-alpha - 2023-05-15

Fixed

  • Fix gRPC instrumentation memory access issue on newer kernels. (#150)

Changed

  • Only pull docker image if not present for the emojivoto example. (#149)
  • Update HTTP span names to include method and route to match semantic conventions. (#143)
  • Fix missing spans in gorillamux instrumentation. (#86)

Changed

  • Update HTTP span names to include method and route to match semantic conventions. (#143)
  • Add DockerHub to release destinations. (#152)

v0.2.0-alpha - 2023-05-03

Added

  • Add gin-gonic/gin instrumentation. (#100)
  • Add ARM64 support. (#82)
  • Add OTEL_GO_AUTO_SHOW_VERIFIER_LOG environment variable to control whether the verifier log is shown. (#128)

Changed

  • Use verion spans in offsets_results.json instead of storing each version. (#45)
  • Change OTEL_TARGET_EXE environment variable to OTEL_GO_AUTO_TARGET_EXE. (#97)

v0.1.0-alpha - 2023-04-17

This is the first release of OpenTelemetry Go Automatic Instrumentation.