All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
This project adheres to Semantic Versioning.
- 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)
- Dropped compatibility testing for Go 1.19. The project no longer guarantees support for this version of Go. (#4352)
- The
go.opentelemetry.io/contrib/samplers/jaegerremote
sampler does not panic when the default HTTP round-tripper (http.DefaultTransport
) is not*http.Transport
. (#4045)
1.20.0/0.45.0/0.14.0 - 2023-09-28
- 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)
- 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)
1.19.0/0.44.0/0.13.0 - 2023-09-12
- Add
gcp.gce.instance.name
andgcp.gce.instance.hostname
resource attributes togo.opentelemetry.io/contrib/detectors/gcp
. (#4263)
- 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)
- 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)
1.18.0/0.43.0/0.12.0 - 2023-08-28
- Add
NewMiddleware
function ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#2964) - The
go.opentelemetry.io/contrib/exporters/autoexport
package to provide configuration of trace exporters with useful defaults and environment variable support. (#2753, #4100, #4130, #4132, #4134) WithRouteTag
ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
adds HTTP route attribute to metrics. (#615)- Add
WithSpanOptions
option ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#3768) - Add testing support for Go 1.21. (#4233)
- Add
WithFilter
option togo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
. (#4230)
- Change interceptors in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
to disableSENT
/RECEIVED
events. UseWithMessageEvents()
to turn back on. (#3964)
go.opentelemetry.io/contrib/detectors/gcp
: Detectfaas.instance
instead offaas.id
, sincefaas.id
is being removed. (#4198)
- AWS XRay Remote Sampling to cap
quotaBalance
to 1x quota ingo.opentelemetry.io/contrib/samplers/aws/xray
. (#3651, #3652) - Do not panic when the HTTP request has the "Expect: 100-continue" header in
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace
. (#3892) - Fix span status value set for non-standard HTTP status codes in modules listed below. (#3966)
go.opentelemetry.io/contrib/instrumentation/github.com/emicklei/go-restful/otelrestful
go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin
go.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho
go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
- Do not modify the origin request in
RoundTripper
ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#4033) - Handle empty value of
OTEL_PROPAGATORS
environment variable the same way as when the variable is unset ingo.opentelemetry.io/contrib/propagators/autoprop
. (#4101) - Fix gRPC service/method URL path parsing discrepancies in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#4135)
- The
go.opentelemetry.io/contrib/instrumentation/github.com/astaxie/beego/otelbeego
module is deprecated. (#4092, #4104) - The
go.opentelemetry.io/contrib/instrumentation/github.com/go-kit/kit/otelkit
module is deprecated. (#4093, #4104) - The
go.opentelemetry.io/contrib/instrumentation/github.com/Shopify/sarama/otelsarama
module is deprecated. (#4099) - The
go.opentelemetry.io/contrib/instrumentation/github.com/bradfitz/gomemcache/memcache/otelmemcache
module is deprecated. (#4164) - The
go.opentelemetry.io/contrib/instrumentation/github.com/gocql/gocql/otelgocql
module is deprecated. (#4164)
- Remove
Handler
type ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#2964)
1.17.0/0.42.0/0.11.0 - 2023-05-23
- Use
strings.Cut()
instead ofstring.SplitN()
for better readability and memory use. (#3822)
1.17.0-rc.1/0.42.0-rc.1/0.11.0-rc.1 - 2023-05-17
- Upgrade dependencies of OpenTelemetry Go to use the new
v1.16.0-rc.1
/v0.39.0-rc.1
release. - Remove
semver:
prefix from instrumentation version. (#3681, #3798)
SemVersion
functions in instrumentation packages are deprecated, useVersion
instead. (#3681, #3798)
1.16.1/0.41.1/0.10.1 - 2023-05-02
- The
WithPublicEndpoint
andWithPublicEndpointFn
options ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
. (#3661)
- Upgrade dependencies of OpenTelemetry Go to use the new
v1.15.1
/v0.38.1
release
- AWS XRay Remote Sampling to preserve previous rule if updated rule property has not changed in
go.opentelemetry.io/contrib/samplers/aws/xray
. (#3619, #3620)
1.16.0/0.41.0/0.10.0 - 2023-04-28
- AWS SDK add
rpc.system
attribute ingo.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
. (#3582, #3617)
- Update
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
to align gRPC server span status with the changes in the OpenTelemetry specification. (#3685) - Adding the
db.statement
tag to spans ingo.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo
is now disabled by default. (#3519)
- The error received by
otelecho
middleware is then passed back to upstream middleware instead of being swallowed. (#3656) - Prevent taking from reservoir in AWS XRay Remote Sampler when there is zero capacity in
go.opentelemetry.io/contrib/samplers/aws/xray
. (#3684) - Fix
otelhttp.Handler
ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
to propagate multipleWriteHeader
calls while persisting the initialstatusCode
. (#3580)
1.16.0-rc.2/0.41.0-rc.2/0.10.0-rc.2 - 2023-03-23
- The
WithPublicEndpoint
andWithPublicEndpointFn
options ingo.opentelemetry.io/contrib/instrumentation/github.com/emicklei/go-restful/otelrestful
. (#3563)
- AWS SDK rename attributes
aws.operation
,aws.service
torpc.method
,rpc.service
ingo.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
. (#3582, #3617) - AWS SDK span name to be of the format
Service.Operation
ingo.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
. (#3582, #3521) - Prevent sampler configuration reset from erroneously sampling first span in
go.opentelemetry.io/contrib/samplers/jaegerremote
. (#3603, #3604)
1.16.0-rc.1/0.41.0-rc.1/0.10.0-rc.1 - 2023-03-02
- Dropped compatibility testing for Go 1.18. The project no longer guarantees support for this version of Go. (#3516)
1.15.0/0.40.0/0.9.0 - 2023-02-27
This release is the last to support Go 1.18. The next release will require at least Go 1.19.
- Support Go 1.20. (#3372)
- Add
SpanNameFormatter
option to packagego.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin
. (#3343)
- Change to use protobuf parser instead of encoding/json to accept enums as strings in
go.opentelemetry.io/contrib/samplers/jaegerremote
. (#3183)
- Remove use of deprecated
"math/rand".Seed
ingo.opentelemetry.io/contrib/instrumentation/github.com/Shopify/sarama/otelsarama/example/producer
. (#3396) - Do not assume "aws" partition in ecs detector to prevent panic in
go.opentelemetry.io/contrib/detectors/aws/ecs
. (#3167) - The span name of producer spans from
go.opentelemetry.io/contrib/instrumentation/github.com/Shopify/sarama/otelsarama
is corrected to usepublish
instead ofsend
. (#3369) - Attribute types are corrected in
go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
. (#3369)aws.dynamodb.table_names
is now a string slice value.aws.dynamodb.global_secondary_indexes
is now a string slice value.aws.dynamodb.local_secondary_indexes
is now a string slice value.aws.dynamodb.attribute_definitions
is now a string slice value.aws.dynamodb.global_secondary_index_updates
is now a string slice value.aws.dynamodb.provisioned_read_capacity
is now afloat64
value.aws.dynamodb.provisioned_write_capacity
is now afloat64
value.
1.14.0/0.39.0/0.8.0 - 2023-02-07
- Change
runtime.uptime
instrument ingo.opentelemetry.io/contrib/instrumentation/runtime
fromInt64ObservableUpDownCounter
toInt64ObservableCounter
, since the value is monotonic. (#3347) samplers/jaegerremote
: change to use protobuf parser instead of encoding/json to accept enums as strings. (#3183)
- The GCE detector in
go.opentelemetry.io/contrib/detectors/gcp
includes the "cloud.region" attribute when appropriate. (#3367)
1.13.0/0.38.0/0.7.0 - 2023-01-30
- Add
WithSpanNameFormatter
togo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
to allow customizing span names. (#3041) - Add missing recommended AWS Lambda resource attributes
faas.instance
andfaas.max_memory
ingo.opentelemetry.io/contrib/detectors/aws/lambda
. (#3148) - Improve documentation for
go.opentelemetry.io/contrib/samplers/jaegerremote
by providing examples of sampling endpoints. (#3147) - Add
WithServerName
togo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
to set the primary server name of aHandler
. (#3182)
- Remove expensive calculation of uncompressed message size attribute in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#3168) - Upgrade all
semconv
packages to usev1.17.0
. (#3182) - Upgrade dependencies of OpenTelemetry Go to use the new
v1.12.0
/v0.35.0
release. (#3190, #3170)
- Implemented retrieving the
aws.ecs.*
resource attributes ingo.opentelemetry.io/detectors/aws/ecs
based on the ECS Metadata v4 endpoint. (#2626) - The
WithLogger
option togo.opentelemetry.io/contrib/samplers/jaegerremote
to allow users to pass alogr.Logger
and have operations logged. (#2566) - Add the
messaging.url
&messaging.system
attributes to all appropriate SQS operations in thego.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
package. (#2879) - Add example use of the metrics signal to
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/example
. (#2610) - [otelgin] Add support for filters to the
go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin
package to provide the way to control which inbound requests are traced. (#2965, #2963)
- Set the status_code span attribute even if the HTTP handler hasn't written anything. (#2822)
- Do not wrap http.NoBody in
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
, which fixes handling of that special request body. (#2983)
- Add trace context propagation support to
instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
(#2856). - [otelgrpc] Add
WithMeterProvider
function to enable metric and add metricrpc.server.duration
to otelgrpc instrumentation library. (#2700)
- Upgrade dependencies of OpenTelemetry Go to use the new
v1.11.1
/v0.33.0
release
- Upgrade dependencies of the OpenTelemetry Go Metric SDK to use the new
v1.11.0
/v0.32.3
release
- Upgrade dependencies of the OpenTelemetry Go Metric SDK to use the new
v0.32.2
release - Avoid getting a new Tracer for every RPC in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#2835) - Conditionally compute message size for tracing events using proto v2 API rather than legacy v1 API in
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
. (#2647)
- The
Inject
function ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
is deprecated. (#2838) - The
Extract
function ingo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
is deprecated. (#2838)
- Upgrade dependencies of the OpenTelemetry Go Metric SDK to use the new
v0.32.1
release
- Drop support for Go 1.17. The project currently only supports Go 1.18 and above. (#2785)
- Upgrade dependencies of the OpenTelemetry Go Metric SDK to use the new
v0.32.0
release. (#2781, #2756, #2758, #2760, #2762)
- Rename the
Typ
field of"go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc".InterceptorInfo
toType
. (#2688) - Use Go 1.19 as the default version for CI testing/linting. (#2675)
- Fix the Jaeger propagator rejecting trace IDs that are both shorter than 128 bits and not exactly 64 bits long (while not being 0). Also fix the propagator rejecting span IDs shorter than 64 bits. This fixes compatibility with Jaeger clients encoding trace and span IDs as variable-length hex strings, as required by the Jaeger propagation format. (#2731)
1.9.0/0.34.0/0.4.0 - 2022-08-02
- Add gRPC trace
Filter
to thego.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
package to provide the way to filter the traces automatically generated in interceptors. (#2572) - The
TextMapPropagator
function togo.opentelemetry.io/contrib/propagators/autoprop
. This function is used to return a compositeTextMapPropagator
from registered names (instead of having to specify with an environment variable). (#2593)
- Upgraded all
semconv
package use tov1.12.0
. (#2589)
1.8.0/0.33.0 - 2022-07-08
- The
go.opentelemetry.io/contrib/propagators/autoprop
package to provide configuration of propagators with useful defaults and envar support. (#2258) WithPublicEndpointFn
hook to dynamically detect public HTTP requests and set their trace parent as a link. (#2342)
- Fix the
otelhttp
,otelgin
,otelmacaron
,otelrestful
middlewares by usingSpanKindServer
when deciding theSpanStatus
. This makes4xx
response codes to not be an error anymore. (#2427)
1.7.0/0.32.0 - 2022-04-28
- Consistent probability sampler implementation. (#1379)
- Upgraded all
semconv
package use tov1.10.0
. This includes a backwards incompatible change for theotelgocql
package to conform with the specification change. Thedb.cassandra.keyspace
attribute is now transmitted as thedb.name
attribute. (#2222)
- Fix the
otelmux
middleware by usingSpanKindServer
when deciding theSpanStatus
. This makes4xx
response codes to not be an error anymore. (#1973) - Fixed jaegerremote sampler not behaving properly with per operation strategy set. (#2137)
- Stopped injecting propagation context into response headers in otelhttp. (#2180)
- Fix issue where attributes for DynamoDB were not added because of a string miss match. (#2272)
- Drop support for Go 1.16. The project currently only supports Go 1.17 and above. (#2314)
1.6.0/0.31.0 - 2022-03-28
- The project is now tested against Go 1.18 (in addition to the existing 1.16 and 1.17) (#1976)
- Upgraded all dependencies on stable modules from
go.opentelemetry.io/otel
from v1.5.0 to v1.6.1. (#2134) - Upgraded all dependencies on metric modules from
go.opentelemetry.io/otel
from v0.27.0 to v0.28.0. (#1977)
- otelhttp: Avoid panic by adding nil check to
wrappedBody.Close
(#2164)
1.5.0/0.30.0/0.1.0 - 2022-03-16
- Added the
go.opentelemetry.io/contrib/samplers/jaegerremote
package. This package implements the Jaeger remote sampler for OpenTelemetry Go. (#936) - DynamoDB spans created with the
go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws
package now have the appropriate database attributes added for the operation being performed. These attributes are detected automatically, but it is also now possible to provide a custom function to set attributes usingWithAttributeSetter
. (#1582) - Add resource detector for GCP cloud function. (#1584)
- Add OpenTracing baggage extraction to the OpenTracing propagator in
go.opentelemetry.io/contrib/propagators/ot
. (#1880)
- Fix the
echo
middleware by usingSpanKind.SERVER
when deciding theSpanStatus
. This makes4xx
response codes to not be an error anymore. (#1848)
- The deprecated
go.opentelemetry.io/contrib/exporters/metric/datadog
module is removed. (#1920) - The deprecated
go.opentelemetry.io/contrib/exporters/metric/dogstatsd
module is removed. (#1920) - The deprecated
go.opentelemetry.io/contrib/exporters/metric/cortex
module is removed. Use thego.opentelemetry.io/otel/exporters/otlp/otlpmetric
exporter as a replacement to send data to a collector which can then export with its PRW exporter. (#1920)
1.4.0/0.29.0 - 2022-02-14
- Add
WithClientTrace
option togo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
. (#875)
- All metric instruments from the
go.opentelemetry.io/contrib/instrumentation/runtime
package have been renamed fromruntime.go.*
toprocess.runtime.go.*
so as to comply with OpenTelemetry semantic conventions. (#1549)
- Change the
http-server-duration
instrument ingo.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
to record milliseconds instead of microseconds. This changes fixes the code to comply with the OpenTelemetry specification. (#1414, #1537) - Fixed the region reported by the
"go.opentelemetry.io/contrib/detectors/gcp".CloudRun
detector to comply with the OpenTelemetry specification. It no longer includes the project scoped region path, instead just the region. (#1546) - The
"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp".Transport
type now correctly handles protocol switching responses. The returned response body implements theio.ReadWriteCloser
interface if the underlying one does. This ensures that protocol switching requests receive a response body that they can write to. (#1329, #1628)
- The
go.opentelemetry.io/contrib/exporters/metric/datadog
module is deprecated. (#1639) - The
go.opentelemetry.io/contrib/exporters/metric/dogstatsd
module is deprecated. (#1639) - The
go.opentelemetry.io/contrib/exporters/metric/cortex
module is deprecated. Use the go.opentelemetry.io/otel/exporters/otlp/otlpmetric exporter as a replacement to send data to a collector which can then export with its PRW exporter. (#1639)
- Remove the
MinMaxSumCount
from cortex and datadog exporter. (#1554) - The
go.opentelemetry.io/contrib/exporters/metric/dogstatsd
exporter no longer support exporting histogram or exact data points. (#1639) - The
go.opentelemetry.io/contrib/exporters/metric/datadog
exporter no longer support exporting exact data points. (#1639)
1.3.0/0.28.0 - 2021-12-10
We have updated the project minimum supported Go version to 1.16
otelhttptrace.NewClientTrace
now usesTracerProvider
from the parent context if one exists and none was set withWithTracerProvider
(#874)
- The
"go.opentelemetry.io/contrib/detector/aws/ecs".Detector
no longer errors if not running in ECS. (#1428) go.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
does not require instrumented HTTP handlers to callWrite
norWriteHeader
anymore. (#1443)
1.2.0/0.27.0 - 2021-11-15
- Update dependency on the
go.opentelemetry.io/otel
project tov1.2.0
. go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-lambda-go/otellambda/xrayconfig
updated to ensure access to theTracerProvider
.- A
NewTracerProvider()
function is available to construct a recommendedTracerProvider
configuration. AllRecommendedOptions()
has been renamed toWithRecommendedOptions()
and takes aTracerProvider
as an argument.EventToCarrier()
andPropagator()
are nowWithEventToCarrier()
andWithPropagator()
to reflect that they returnOption
implementations.
- A
1.1.1/0.26.1 - 2021-11-04
- The
Transport
,Handler
, and HTTP client convenience wrappers in thego.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
package now use theTracerProvider
from the parent context if one exists and none was explicitly set when configuring the instrumentation. (#873) - Semantic conventions now use
go.opentelemetry.io/otel/semconv/v1.7.0"
. (#1385)
1.1.0/0.26.0 - 2021-10-28
Update dependency on the go.opentelemetry.io/otel
project to v1.1.0
.
- Add instrumentation for the
github.com/aws/aws-lambda-go
package. (#983) - Add resource detector for AWS Lambda. (#983)
- Add
WithTracerProvider
option forotelhttptrace.NewClientTrace
. (#1128) - Add optional AWS X-Ray configuration module for AWS Lambda Instrumentation. (#984)
- The
go.opentelemetry.io/contrib/propagators/ot
propagator returns the wordstrue
orfalse
for theot-tracer-sampled
header instead of numerical0
and1
. (#1358)
1.0.0/0.25.0 - 2021-10-06
- Resource detectors and propagators (with the exception of
go. opentelemetry.io/contrib/propagators/opencensus
) are now stable and released at v1.0.0. - Update dependency on the
go.opentelemetry.io/otel
project tov1.0.1
. - Update dependency on
go.opentelemetry.io/otel/metric
tov0.24.0
.
0.24.0 - 2021-09-21
- Update dependency on the
go.opentelemetry.io/otel
project tov1.0.0
.
0.23.0 - 2021-09-08
- Add
WithoutSubSpans
,WithRedactedHeaders
,WithoutHeaders
, andWithInsecureHeaders
options forotelhttptrace.NewClientTrace
. (#879)
- Split
go.opentelemetry.io/contrib/propagators
module intob3
,jaeger
,ot
modules. (#985) otelmongodb
span attributes, name and span status now conform to specification. (#769)- Migrated EC2 resource detector support from root module
go.opentelemetry.io/contrib/detectors/aws
to a separate EC2 resource detector modulego.opentelemetry.io/contrib/detectors/aws/ec2
(#1017) - Add
cloud.provider
andcloud.platform
to AWS detectors. (#1043) otelhttptrace.NewClientTrace
now redacts known sensitive headers by default. (#879)
- Fix span not marked as error in
otelhttp.Transport
whenRoundTrip
fails with an error. (#950)
0.22.0 - 2021-07-26
- Add the
zpages
span processor. (#894)
- The
b3.B3
type has been removed.b3.New()
andb3.WithInjectEncoding(encoding)
are added to replace it. (#868)
- Fix deadlocks and race conditions in
otelsarama.WrapAsyncProducer
. Themessaging.message_id
andmessaging.kafka.partition
attributes are now not set if a message was not processed. (#754) (#755) (#881) - Fix
otelsarama.WrapAsyncProducer
so that the messages from theErrors
channel contain the originalMetadata
. (#754)
0.21.0 - 2021-06-18
- Dockerfile based examples for
otelgin
andotelmacaron
. (#767)
- Supported minimum version of Go bumped from 1.14 to 1.15. (#787)
- EKS Resource Detector now use the Kubernetes Go client to obtain the ConfigMap. (#813)
- Remove service name from
otelmongodb
configuration and span attributes. (#763)
0.20.0 - 2021-04-23
- The
go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo
instrumentation now accepts aWithCommandAttributeDisabled
, so the caller can specify whether to opt-out of tracing the mongo command. (#712) - Upgrade to v0.20.0 of
go.opentelemetry.io/otel
. (#758) - The B3 and Jaeger propagators now store their debug or deferred state in the context.Context instead of the SpanContext. (#758)
0.19.0 - 2021-03-19
- Upgrade to v0.19.0 of
go.opentelemetry.io/otel
. - Fix Span names created in HTTP Instrumentation package to conform with guidelines. (#757)
0.18.0 - 2021-03-04
otelmemcache
no longer sets span status to OK instead of leaving it unset. (#477)- Fix goroutine leak in gRPC
StreamClientInterceptor
. (#581)
- Remove service name from
otelmemcache
configuration and span attributes. (#477)
0.17.0 - 2021-02-15
- Add
ot-tracer
propagator (#562)
- Rename project default branch from
master
tomain
.
- Added failure message for AWS ECS resource detector for better debugging (#568)
- Goroutine leak in gRPC StreamClientInterceptor while streamer returns an error. (#581)
0.16.0 - 2021-01-13
- Fix module path for AWS ECS resource detector (#517)
0.15.1 - 2020-12-14
- Add registry link check to
Makefile
and pre-release script. (#446) - A new AWS X-Ray ID Generator (#459)
- Migrate CircleCI jobs to GitHub Actions (#476)
- Add CodeQL GitHub Action (#506)
- Add gosec workflow to GitHub Actions (#507)
- Fixes the body replacement in otelhttp to not to mutate a nil body. (#484)
0.15.0 - 2020-12-11
- A new Amazon EKS resource detector. (#465)
- A new
gcp.CloudRun
detector for detecting resource from a Cloud Run instance. (#455)
0.14.0 - 2020-11-20
otelhttp.{Get,Head,Post,PostForm}
convenience wrappers for theirhttp
counterparts. (#390)- The AWS detector now adds the cloud zone, host image ID, host type, and host name to the returned
Resource
. (#410) - Add Amazon ECS Resource Detector for AWS X-Ray. (#466)
- Add propagator for AWS X-Ray (#462)
- Add semantic version to
Tracer
/Meter
created by instrumentation packagesotelsaram
,otelrestful
,otelmongo
,otelhttp
andotelhttptrace
. (#412) - Update instrumentation guidelines about tracer / meter semantic version. (#412)
- Replace internal tracer and meter helpers by helpers from
go.opentelemetry.io/otel
. (#414) - gRPC instrumentation sets span attribute
rpc.grpc.status_code
. (#453)
/detectors/aws
no longer fails if instance metadata is not available (e.g. not running in AWS) (#401)- The AWS detector now returns a partial resource and an appropriate error if it encounters an error part way through determining a
Resource
identity. (#410) - The
host
instrumentation unit test has been updated to not depend on the system it runs on. (#426)
0.13.0 - 2020-10-09
- A Jaeger propagator. (#375)
- The
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
package instrumentation no longer accepts aTracer
as an argument to the interceptor function. Instead, a newWithTracerProvider
option is added to configure theTracerProvider
used when creating theTracer
for the instrumentation. (#373) - The
go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron
instrumentation now accepts aTracerProvider
rather than aTracer
. (#374) - Remove
go.opentelemetry.io/otel/sdk
dependency from instrumentation. (#381) - Use
httpsnoop
ingo.opentelemetry.io/contrib/instrumentation/github.com/gorilla/mux/otelmux
to ensurehttp.ResponseWriter
additional interfaces are preserved. (#388)
- The
go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho.Middleware
no longer sends duplicate errors to the globalErrorHandler
. (#377, #364) - The import comment in
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
is now correctly quoted. (#379) - The B3 propagator sets the sample bitmask when the sampling decision is
debug
. (#369)
0.12.0 - 2020-09-25
- Benchmark tests for the gRPC instrumentation. (#296)
- Integration testing for the gRPC instrumentation. (#297)
- Allow custom labels to be added to net/http metrics. (#306)
- Added B3 propagator, moving it out of open.telemetry.io/otel repo. (#344)
- Unify instrumentation about provider options for
go.mongodb.org/mongo-driver
,gin-gonic/gin
,gorilla/mux
,labstack/echo
,emicklei/go-restful
,bradfitz/gomemcache
,Shopify/sarama
,net/http
andbeego
. (#303) - Update instrumentation guidelines about uniform provider options. Also, update style guide. (#303)
- Make config struct of instrumentation unexported. (#303)
- Instrumentations have been updated to adhere to the configuration style guide's
updated recommendation to use
newConfig()
instead ofconfigure()
. (#336) - A new instrumentation naming scheme is implemented to avoid package name conflicts for instrumented packages while still remaining discoverable. (#359)
google.golang.org/grpc
->google.golang.org/grpc/otelgrpc
go.mongodb.org/mongo-driver
->go.mongodb.org/mongo-driver/mongo/otelmongo
net/http
->net/http/otelhttp
net/http/httptrace
->net/http/httptrace/otelhttptrace
github.com/labstack/echo
->github.com/labstack/echo/otelecho
github.com/bradfitz/gomemcache
->github.com/bradfitz/gomemcache/memcache/otelmemcache
github.com/gin-gonic/gin
->github.com/gin-gonic/gin/otelgin
github.com/gocql/gocql
->github.com/gocql/gocql/otelgocql
github.com/emicklei/go-restful
->github.com/emicklei/go-restful/otelrestful
github.com/Shopify/sarama
->github.com/Shopify/sarama/otelsarama
github.com/gorilla/mux
->github.com/gorilla/mux/otelmux
github.com/astaxie/beego
->github.com/astaxie/beego/otelbeego
gopkg.in/macaron.v1
->gopkg.in/macaron.v1/otelmacaron
- Rename
OTelBeegoHandler
toHandler
in thego.opentelemetry.io/contrib/instrumentation/github.com/astaxie/beego/otelbeego
package. (#359) - Replace
WithTracer
withWithTracerProvider
in thego.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron
instrumentation. (#374)
0.11.0 - 2020-08-25
- Top-level
Version()
andSemVersion()
functions defining the current version of the contrib package. (#225) - Instrumentation for the
github.com/astaxie/beego
package. (#200) - Instrumentation for the
github.com/bradfitz/gomemcache
package. (#204) - Host metrics instrumentation. (#231)
- Cortex histogram and distribution support. (#237)
- Cortex example project. (#238)
- Cortex HTTP authentication. (#246)
- Remove service name as a parameter of Sarama instrumentation. (#221)
- Replace
WithTracer
withWithTracerProvider
in Sarama instrumentation. (#221) - Switch to use common top-level module
SemVersion()
when creating versioned tracer inbradfitz/gomemcache
. (#226) - Use
IntegrationShouldRun
ingomemcache_test
. (#254) - Use Go 1.15 for CI builds. (#236)
- Improved configuration for
runtime
instrumentation. (#224)
- Update dependabot configuration to include newly added
bradfitz/gomemcache
package. (#226) - Correct
runtime
instrumentation name. (#241)
0.10.1 - 2020-08-13
- The
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc
module has been added to replace the instrumentation that had previoiusly existed in thego.opentelemetry.io/otel/instrumentation/grpctrace
package. (#189) - Instrumentation for the stdlib
net/http
andnet/http/httptrace
packages. (#190) - Initial Cortex exporter. (#202, #205, #210, #211, #215)
- Bump google.golang.org/grpc from 1.30.0 to 1.31.0. (#166)
- Bump go.mongodb.org/mongo-driver from 1.3.5 to 1.4.0 in /instrumentation/go.mongodb.org/mongo-driver. (#170)
- Bump google.golang.org/grpc in /instrumentation/github.com/gin-gonic/gin. (#173)
- Bump google.golang.org/grpc in /instrumentation/github.com/labstack/echo. (#176)
- Bump google.golang.org/grpc from 1.30.0 to 1.31.0 in /instrumentation/github.com/Shopify/sarama. (#179)
- Bump cloud.google.com/go from 0.61.0 to 0.63.0 in /detectors/gcp. (#181, #199)
- Bump github.com/aws/aws-sdk-go from 1.33.15 to 1.34.1 in /detectors/aws. (#184, #192, #193, #198, #201, #203)
- Bump github.com/golangci/golangci-lint from 1.29.0 to 1.30.0 in /tools. (#186)
- Setup CI to run tests that require external resources (Cassandra and MongoDB). (#191)
- Bump github.com/Shopify/sarama from 1.26.4 to 1.27.0 in /instrumentation/github.com/Shopify/sarama. (#206)
0.10.0 - 2020-07-31
This release upgrades its go.opentelemetry.io/otel dependency to v0.10.0 and includes new instrumentation for popular Kafka and Cassandra clients.
- A detector that generate resources from GCE instance. (#132)
- A detector that generate resources from AWS instances. (#139)
- Instrumentation for the Kafka client github.com/Shopify/sarama. (#134, #153)
- Links and status message for mock span in the internal testing library. (#134)
- Instrumentation for the Cassandra client github.com/gocql/gocql. (#137)
- A detector that generate resources from GKE clusters. (#154)
- Bump github.com/aws/aws-sdk-go from 1.33.8 to 1.33.15 in /detectors/aws. (#155, #157, #159, #162)
- Bump github.com/golangci/golangci-lint from 1.28.3 to 1.29.0 in /tools. (#146)
0.9.0 - 2020-07-20
This release upgrades its go.opentelemetry.io/otel dependency to v0.9.0.
- Bump github.com/emicklei/go-restful/v3 from 3.0.0 to 3.2.0 in /instrumentation/github.com/emicklei/go-restful. (#133)
- Update dependabot configuration to correctly check all included packages. (#131)
- Update
RELEASING.md
with correcttag.sh
command. (#130)
0.8.0 - 2020-07-10
This release upgrades its go.opentelemetry.io/otel dependency to v0.8.0, includes minor fixes, and new instrumentation.
- Create this
CHANGELOG.md
. (#114) - Add
emicklei/go-restful/v3
trace instrumentation. (#115)
- Update
CONTRIBUTING.md
to ask for updates toCHANGELOG.md
with each pull request. (#114) - Move all
github.com
package instrumentation under agithub.com
directory. (#118)
- Update README to include information about external instrumentation.
To start, this includes native instrumentation found in the
go-redis/redis
package. (#117) - Bump github.com/golangci/golangci-lint from 1.27.0 to 1.28.2 in /tools. (#122, #123, #125)
- Bump go.mongodb.org/mongo-driver from 1.3.4 to 1.3.5 in /instrumentation/go.mongodb.org/mongo-driver. (#124)
0.7.0 - 2020-06-29
This release upgrades its go.opentelemetry.io/otel dependency to v0.7.0.
- Create
RELEASING.md
instructions. (#101) - Apply transitive dependabot go.mod updates as part of a new automatic Github workflow. (#94)
- New dependabot integration to automate package upgrades. (#61)
- Add automatic tag generation script for release. (#60)
- Upgrade Datadog metrics exporter to include Resource tags. (#46)
- Added output validation to Datadog example. (#96)
- Move Macaron package to match layout guidelines. (#92)
- Update top-level README and instrumentation README. (#92)
- Bump google.golang.org/grpc from 1.29.1 to 1.30.0. (#99)
- Bump github.com/golangci/golangci-lint from 1.21.0 to 1.27.0 in /tools. (#77)
- Bump go.mongodb.org/mongo-driver from 1.3.2 to 1.3.4 in /instrumentation/go.mongodb.org/mongo-driver. (#76)
- Bump github.com/stretchr/testify from 1.5.1 to 1.6.1. (#74)
- Bump gopkg.in/macaron.v1 from 1.3.5 to 1.3.9 in /instrumentation/macaron. (#68)
- Bump github.com/gin-gonic/gin from 1.6.2 to 1.6.3 in /instrumentation/gin-gonic/gin. (#73)
- Bump github.com/DataDog/datadog-go from 3.5.0+incompatible to 3.7.2+incompatible in /exporters/metric/datadog. (#78)
- Replaced
internal/trace/http.go
helpers withapi/standard
helpers from otel-go repo. (#112)
0.6.1 - 2020-06-08
First official tagged release of contrib
repository.
labstack/echo
trace instrumentation (#42)mongodb
trace instrumentation (#26)- Go Runtime metrics (#9)
gorilla/mux
trace instrumentation (#19)gin-gonic
trace instrumentation (#15)macaron
trace instrumentation (#20)dogstatsd
metrics exporter (#10)datadog
metrics exporter (#22)- Tags to all modules in repository
- Repository folder structure and automated build (#3)
- Prefix support for dogstatsd (#34)
- Update Go Runtime package to use batch observer (#44)