Releases: open-telemetry/opentelemetry-go-contrib
Release v1.27.0/v0.52.0/v0.21.0/v0.7.0/v0.2.0
Overview
Added
- Add the new
go.opentelemetry.io/contrib/instrgen
package to provide auto-generated source code instrumentation. (#3068, #3108) - Add an experimental
OTEL_METRICS_PRODUCERS
environment variable togo.opentelemetry.io/contrib/autoexport
to be set metrics producers. (#5281)prometheus
andnone
are supported values. You can specify multiple producers separated by a comma.- Add
WithFallbackMetricProducer
option that adds a fallback if theOTEL_METRICS_PRODUCERS
is not set or empty.
- The
go.opentelemetry.io/contrib/processors/baggage/baggagetrace
module. This module provides a Baggage Span Processor. (#5404) - Add gRPC trace
Filter
for stats handler togo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#5196) - Add a repository Code Ownership Policy. (#5555)
- The
go.opentelemetry.io/contrib/bridges/otellogrus
module. This module provides an OpenTelemetry logging bridge forgithub.com/sirupsen/logrus
. (#5355) - The
WithVersion
option function ingo.opentelemetry.io/contrib/bridges/otelslog
. This option function is used as a replacement ofWithInstrumentationScope
to specify the logged package version. (#5588) - The
WithSchemaURL
option function ingo.opentelemetry.io/contrib/bridges/otelslog
. This option function is used as a replacement ofWithInstrumentationScope
to specify the semantic convention schema URL for the logged records. (#5588) - Add support for Cloud Run jobs in
go.opentelemetry.io/contrib/detectors/gcp
. (#5559)
Changed
-
The gRPC trace
Filter
for interceptor is renamed toInterceptorFilter
. (#5196) -
The gRPC trace filter functions
Any
,All
,None
,Not
,MethodName
,MethodPrefix
,FullMethodName
,ServiceName
,ServicePrefix
andHealthCheck
for interceptor are moved togo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc/filters/interceptor
. With this change, the filters ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
are now working for stats handler. (#5196) -
NewLogger
now accepts aname
string
as the first argument. This parameter is used as a replacement ofWithInstrumentationScope
to specify the name of the logger backing the underlyingHandler
. (#5588) -
NewHandler
now accepts aname
string
as the first argument. This parameter is used as a replacement ofWithInstrumentationScope
to specify the name of the logger backing the returnedHandler
. (#5588) -
Upgrade all dependencies of
go.opentelemetry.io/otel/semconv/v1.24.0
togo.opentelemetry.io/otel/semconv/v1.25.0
. (#5605)
Removed
- The
WithInstrumentationScope
option function ingo.opentelemetry.io/contrib/bridges/otelslog
is removed. Use thename
parameter added toNewHandler
andNewLogger
as well asWithVersion
andWithSchema
as replacements. (#5588)
Deprecated
- The
InterceptorFilter
type ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
is deprecated. (#5196)
What's Changed
- build(deps): bump lycheeverse/lychee-action from 1.9.3 to 1.10.0 by @dependabot in #5436
- build(deps): bump github.com/aws/aws-sdk-go from 1.51.25 to 1.51.30 in /detectors/aws/ec2 by @dependabot in #5435
- Add update-all-otel-deps target in Makefile by @XSAM in #5434
- build(deps): bump github.com/golangci/golangci-lint from 1.57.2 to 1.58.0 in /tools by @dependabot in #5441
- build(deps): bump codecov/codecov-action from 4.3.0 to 4.3.1 by @dependabot in #5445
- autoexport: Add OTEL_METRICS_PRODUCERS environment variable support by @gouthamve in #5281
- Fix changelog for #5281 by @pellared in #5450
- processors/baggage: add baggage span processor by @codeboten in #5404
- Configure Renovate by @renovate in #4579
- chore(deps): update module github.com/gabriel-vasile/mimetype to v1.4.3 by @renovate in #5462
- [chore] Renovate to add Skip Changelog label by @pellared in #5464
- chore(deps): update module github.com/golang/snappy to v0.0.4 by @renovate in #5465
- chore(deps): update module github.com/mattn/go-isatty to v0.0.20 by @renovate in #5467
- chore(deps): update module github.com/klauspost/cpuid/v2 to v2.2.7 by @renovate in #5466
- chore(deps): update module google.golang.org/appengine to v1.6.8 by @renovate in #5470
- chore(deps): update module github.com/go-macaron/inject to v0.0.0-20200308113650-138e5925c53b by @renovate in #5471
- chore(deps): update module github.com/tklauser/go-sysconf to v0.3.14 by @renovate in #5468
- chore(deps): update module github.com/ugorji/go/codec to v1.2.12 by @renovate in #5469
- chore(deps): update module github.com/golang/groupcache to v0.0.0-20210331224755-41bb18bfe9da by @renovate in #5472
- chore(deps): update module google.golang.org/genproto to v0.0.0-20240506185236-b8a5c65736ae by @renovate in #5476
- chore(deps): update module github.com/lufia/plan9stats to v0.0.0-20240408141607-282e7b5d6b74 by @renovate in #5473
- chore(deps): update module github.com/power-devops/perfstat to v0.0.0-20240221224432-82ca36839d55 by @renovate in #5474
- chore(deps): update module google.golang.org/genproto/googleapis/rpc to v0.0.0-20240506185236-b8a5c65736ae by @renovate in #5477
- build(deps): bump go.opentelemetry.io/contrib/bridges/prometheus from 0.50.0 to 0.51.0 in /exporters/autoexport by @dependabot in #5460
- chore(deps): update module k8s.io/kube-openapi to v0.0.0-20240430033511-f0e62f92d13f by @renovate in #5478
- chore(deps): update module github.com/bytedance/sonic to v1.11.6 by @renovate in #5479
- fix(deps): update module github.com/shirou/gopsutil/v3 to v3.24.4 by @renovate in #5482
- build(deps): bump golang.org/x/tools from 0.20.0 to 0.21.0 in /tools by @dependabot in #5458
- fix(deps): update opentelemetry-go monorepo to v1.26.0 by @renovate in #5486
- chore(deps): update module k8s.io/utils to v0.0.0-20240502163921-fe8a2dddb1d0 by @renovate in #5480
- fix(deps): update module golang.org/x/exp to v0.0.0-20240506185415-9bf2ced13842 by @renovate in #5487
- fix(deps): update module github.com/brunoscheufler/aws-ecs-metadata-go to v0.0.0-20221221133751-67e37ae746cd by @renovate in #5481
- fix(deps): update module google.golang.org/genproto/googleapis/api to v0.0.0-20240506185236-b8a5c65736ae by @renovate in #5488
- build(deps): bump go.opentelemetry.io/collector/pdata from 1.5.0 to 1.7.0 in /exporters/autoexport by @dependabot in #5459
- chore(deps): update go-openapi packages by @renovate in #5489
- chore(deps): update golang docker tag to v1.22 by @renovate in #5490
- chore(deps): update module github.com/go-ole/go-ole to v1.3.0 by @renovate in #5492
- chore(deps): update module github.com/cespare/xxhash/v2 to v2.3.0 by @renovate in #5491
- chore(deps): update module github.com/go-playground/validator/v10 to v10.20.0 by @renovate in #5495
- chore(deps): update module github.com/google/uuid to v1.6.0 by @renovate in #5497
- chore(deps): update module github.com/klauspost/compress to v1.17.8 by @renovate in #5498
- chore(deps): update module github.com/pelletier/go-toml/v2 to v2.2.2 by @renovate in #5500
- fix(deps): update module github.com/gin-gonic/gin to v1.10.0 by @renovate in #5518
- chore(deps): update module github....
Release v1.26.0/v0.51.0/v0.20.0/v0.6.0/v0.1.0
Added
NewSDK
ingo.opentelemetry.io/contrib/config
now returns a configured SDK with a validMeterProvider
. (#4804)
Changed
- Change the scope name for the prometheus bridge to
go.opentelemetry.io/contrib/bridges/prometheus
to match the package. (#5396)
Fixed
- Fix bug where an empty exemplar was added to counters in
go.opentelemetry.io/contrib/bridges/prometheus
. (#5395) - Fix bug where the last histogram bucket was missing in
go.opentelemetry.io/contrib/bridges/prometheus
. (#5395)
Full Changelog: v1.25.0...v1.26.0
Release v1.25.0/v0.50.0/v0.19.0/v0.5.0/v0.0.1
Added
- Implemented setting the
cloud.resource_id
resource attribute ingo.opentelemetry.io/detectors/aws/ecs
based on the ECS Metadata v4 endpoint. (#5091) - The
go.opentelemetry.io/contrib/bridges/otelslog
module. This module provides an OpenTelemetry logging bridge for "log/slog". (#5335)
Fixed
- Update all dependencies to address [GO-2024-2687]. (#5359)
Removed
Full Changelog: v1.24.0...v1.25.0
Release v1.24.0/v0.49.0/v0.18.0/v0.4.0
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. (#5082)
- Add support for Summary metrics to
go.opentelemetry.io/contrib/bridges/prometheus
. (#5089) - Add support for Exponential (native) Histograms in
go.opentelemetry.io/contrib/bridges/prometheus
. (#5093)
Removed
- The deprecated
RequestCount
constant ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is removed. (#4894) - The deprecated
RequestContentLength
constant ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is removed. (#4894) - The deprecated
ResponseContentLength
constant ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is removed. (#4894) - The deprecated
ServerLatency
constant ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is removed. (#4894)
Fixed
- Retrieving the body bytes count in
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
does not cause a data race anymore. (#5080)
New Contributors
- @arvindbr8 made their first contribution in #4897
- @wushujames made their first contribution in #5135
Full Changelog: v1.23.0...v1.24.0
Release v1.23.0/v0.48.0/v0.17.0/v0.3.0
Added
- Add client metric support to
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#4707) - Add peer attributes to spans recorded by
NewClientHandler
,NewServerHandler
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4873) - Add support for
cloud.account.id
,cloud.availability_zone
andcloud.region
in the AWS ECS detector. (#4860)
Changed
- The fallback options in
go.opentelemetry.io/contrib/exporters/autoexport
now accept factory functions. (#4891)WithFallbackMetricReader(metric.Reader) MetricOption
is replaced withfunc WithFallbackMetricReader(func(context.Context) (metric.Reader, error)) MetricOption
.WithFallbackSpanExporter(trace.SpanExporter) SpanOption
is replaced withWithFallbackSpanExporter(func(context.Context) (trace.SpanExporter, error)) SpanOption
.
- The
http.server.request_content_length
metric ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is changed tohttp.server.request.size
.(#4707) - The
http.server.response_content_length
metric ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is changed tohttp.server.response.size
.(#4707)
Deprecated
- The
RequestCount
,RequestContentLength
,ResponseContentLength
,ServerLatency
constants ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
are deprecated. (#4707)
Fixed
- Do not panic in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
ifMeterProvider
returns anil
instrument. (#4875)
New Contributors
- @acpana made their first contribution in #4831
- @hiroyaonoe made their first contribution in #4704
- @hcelaloner made their first contribution in #4891
Full Changelog: v1.22.0...v1.23.0
Release 1.22.0/0.47.0/0.16.0/0.2.0
Added
- Add
SDK.Shutdown
method in"go.opentelemetry.io/contrib/config"
. (#4583) NewSDK
ingo.opentelemetry.io/contrib/config
now returns a configured SDK with a validTracerProvider
. (#4741)
Changed
- The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/emicklei/go-restful/otelrestful
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace/example
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/example
are upgraded to v1.20.0. (#4320) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
are upgraded to v1.20.0. (#4320) - Updated configuration schema to include
schema_url
for resource definition andwithout_type_suffix
andwithout_units
for the Prometheus exporter. (#4727) - The semantic conventions used by the
go.opentelemetry.io/contrib/detectors/aws/ecs
resource detector are upgraded to v1.24.0. (#4803) - The semantic conventions used by the
go.opentelemetry.io/contrib/detectors/aws/lambda
resource detector are upgraded to v1.24.0. (#4803) - The semantic conventions used by the
go.opentelemetry.io/contrib/detectors/aws/ec2
resource detector are upgraded to v1.24.0. (#4803) - The semantic conventions used by the
go.opentelemetry.io/contrib/detectors/aws/eks
resource detector are upgraded to v1.24.0. (#4803) - The semantic conventions used by the
go.opentelemetry.io/contrib/detectors/gcp
resource detector are upgraded to v1.24.0. (#4803) - The semantic conventions used in
go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-lambda-go/otellambda/test
are upgraded to v1.24.0. (#4803)
Fixed
- Fix
NewServerHandler
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
to correctly set the span status depending on the gRPC status. (#4587) - The
stats.Handler
fromgo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
now does not crash when receiving an unexpected context. (#4825) - Update
go.opentelemetry.io/contrib/detectors/aws/ecs
to fix the task ARN when it is not valid. (#3583) - Do not panic in
go.opentelemetry.io/contrib/detectors/aws/ecs
when the container ARN is not valid. (#3583)
Release v1.21.1/v0.46.1/v0.15.1/v0.1.1
Changed
- Upgrade dependencies of OpenTelemetry Go to use the new
v1.21.0
/v0.44.0
release. (#4582)
Fixed
- Fix
StreamClientInterceptor
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
to end the spans synchronously. (#4537) - Fix data race in stats handlers when processing messages received and sent metrics in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4577) - The stats handlers
NewClientHandler
,NewServerHandler
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
now record RPC durations inms
instead ofns
. (#4548)
Release v1.21.0/v0.46.0/v0.15.0/v0.1.0
Added
- Add the new
go.opentelemetry.io/contrib/instrgen
package to provide auto-generated source code instrumentation. (#3068, #3108) - Add
"go.opentelemetry.io/contrib/samplers/jaegerremote".WithSamplingStrategyFetcher
which sets custom fetcher implementation. (#4045) - Add
"go.opentelemetry.io/contrib/config"
package that includes configuration models generated via go-jsonschema. (#4376) - Add
NewSDK
function to"go.opentelemetry.io/contrib/config"
. The initial implementation only returns noop providers. (#4414) - Add metrics support (No-op, OTLP and Prometheus) to
go.opentelemetry.io/contrib/exporters/autoexport
. (#4229, #4479) - Add support for
console
span exporter and metrics exporter ingo.opentelemetry.io/contrib/exporters/autoexport
. (#4486) - Set unit and description on all instruments in
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#4500) - Add metric support for
grpc.StatsHandler
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4356) - Expose the name of the scopes in all instrumentation libraries as
ScopeName
. (#4448)
Changed
- Dropped compatibility testing for [Go 1.19].
The project no longer guarantees support for this version of Go. (#4352) - Upgrade dependencies of OpenTelemetry Go to use the new
v1.20.0
/v0.43.0
release. (#4546) - In
go.opentelemetry.io/contrib/exporters/autoexport
,Option
was renamed toSpanOption
. The old name is deprecated but continues to be supported as an alias. (#4229)
Deprecated
- The interceptors (
UnaryClientInterceptor
,StreamClientInterceptor
,UnaryServerInterceptor
,StreamServerInterceptor
,WithInterceptorFilter
) are deprecated. Use stats handlers (NewClientHandler
,NewServerHandler
) instead. (#4534)
Fixed
- The
go.opentelemetry.io/contrib/samplers/jaegerremote
sampler does not panic when the default HTTP round-tripper (http.DefaultTransport
) is not*http.Transport
. (#4045) - The
UnaryServerInterceptor
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
now sets gRPC status code correctly for therpc.server.duration
metric. (#4481) - The
NewClientHandler
,NewServerHandler
ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
now honorotelgrpc.WithMessageEvents
options. (#4536) - The
net.sock.peer.*
andnet.peer.*
high cardinality attributes are removed from the metrics generated bygo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4322)
Release v1.20.0/v0.45.0/v0.14.0
Added
- Set the description for the
rpc.server.duration
metric ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4302) - Add
NewServerHandler
andNewClientHandler
that return agrpc.StatsHandler
used for gRPC instrumentation ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#3002) - Add new Prometheus bridge module in
go.opentelemetry.io/contrib/bridges/prometheus
. (#4227)
Changed
- Upgrade dependencies of OpenTelemetry Go to use the new
v1.19.0
/v0.42.0
/v0.0.7
release. - Use
grpc.StatsHandler
for gRPC instrumentation ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc/example
. (#4325)
New Contributors
Full Changelog: v1.19.0...v1.20.0
Release v1.19.0/v0.44.0/v0.13.0
Added
- Add
gcp.gce.instance.name
andgcp.gce.instance.hostname
resource attributes togo.opentelemetry.io/contrib/detectors/gcp
. (#4263)
Changed
- The semantic conventions used by
go.opentelemetry.io/contrib/detectors/aws/ec2
have been upgraded to v1.21.0. (#4265) - The semantic conventions used by
go.opentelemetry.io/contrib/detectors/aws/ecs
have been upgraded to v1.21.0. (#4265) - The semantic conventions used by
go.opentelemetry.io/contrib/detectors/aws/eks
have been upgraded to v1.21.0. (#4265) - The semantic conventions used by
go.opentelemetry.io/contrib/detectors/aws/lambda
have been upgraded to v1.21.0. (#4265) - The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-lambda-go/otellambda
have been upgraded to v1.21.0. (#4265)- The
faas.execution
attribute is nowfaas.invocation_id
. - The
faas.id
attribute is nowaws.lambda.invoked_arn
.
- The
- The semantic conventions used by
go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
have been upgraded to v1.21.0. (#4265) - The
http.request.method
attribute will only allow known HTTP methods from the metrics generated bygo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#4277)
Removed
- The high cardinality attributes
net.sock.peer.addr
,net.sock.peer.port
,http.user_agent
,enduser.id
, andhttp.client_ip
were removed from the metrics generated bygo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#4277) - The deprecated
go.opentelemetry.io/contrib/instrumentation/github.com/astaxie/beego/otelbeego
module is removed. (#4295) - The deprecated
go.opentelemetry.io/contrib/instrumentation/github.com/go-kit/kit/otelkit
module is removed. (#4295) - The deprecated
go.opentelemetry.io/contrib/instrumentation/github.com/Shopify/sarama/otelsarama
module is removed. (#4295) - The deprecated
go.opentelemetry.io/contrib/instrumentation/github.com/bradfitz/gomemcache/memcache/otelmemcache
module is removed. (#4295) - The deprecated
go.opentelemetry.io/contrib/instrumentation/github.com/gocql/gocql/otelgocql
module is removed. (#4295)
New Contributors
- @utsushiiro made their first contribution in #4260
- @RangelReale made their first contribution in #4230
Full Changelog: v1.18.0...v1.19.0