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
- 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 returnedData
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)
- Fix context propagation across different goroutines. (#118)
- The offset tracker can once again build binaries for the Go stdlib. ([#256]open-telemetry#256)
- 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
- 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)
- Upgrade OpenTelemetry semantic conventions to v1.18.0. (#162)
- Remove the HTTP path from span names in
net/http
,gin-gonic/gin
, andgorilla/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
- Fix gRPC instrumentation memory access issue on newer kernels. (#150)
- 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)
- 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
- 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)
- Use verion spans in
offsets_results.json
instead of storing each version. (#45) - Change
OTEL_TARGET_EXE
environment variable toOTEL_GO_AUTO_TARGET_EXE
. (#97)
v0.1.0-alpha - 2023-04-17
This is the first release of OpenTelemetry Go Automatic Instrumentation.