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.
OTEL_LOG_LEVEL
environment variable accepts case insensitive values. (#1374)
- Drop support for Go 1.17 as
go.opentelemetry.io
did the same inv1.11.0
. (#1570)
1.1.0 - 2022-07-14
This release uses OpenTelemetry Go v1.8.0 and OpenTelemetry Go Contrib v1.8.0/v0.33.0.
- Update
go.opentelemetry.io/otel*
dependencies fromv1.7.0
tov1.8.0
. (#1169) - Update
go.opentelemetry.io/contrib*
dependencies fromv1.7.0
/v0.32.0
tov1.8.0
/v0.33.0
. (#1169)
- Drop support for Go 1.16 as
go.opentelemetry.io
did the same inv1.7.0
. (#1172)
1.0.0 - 2022-06-09
This is the first stable release of the Splunk Distribution of OpenTelemetry Go which is compliant with Splunk's GDI Specification v1.3.0.
Please note that although the distribution is marked as stable,
some of its dependent components (e.g. otelhttp
instrumentation library)
are still experimental.
This release uses OpenTelemetry Go v1.7.0 and OpenTelemetry Go Contrib v1.7.0/v0.32.0.
0.9.0 - 2022-05-26
This release contains configuration fixes and simplifies the API before a stable release is published.
go.opentelemetry.io/otel*
dependencies are updated to v1.7.0
and go.opentelemetry.io/contrib*
dependencies are updated to v1.7.0
/v0.32.0
.
- The
NewTracer
function fromgithub.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql
now returns atracer.Tracer
instead of the deprecatedtrace.Tracer
fromgithub.com/graph-gophers/graphql-go
. (#855) - The
TraceQuery
method of theTracer
fromgithub.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql
now returns atracer.QueryFinishFunc
instead of the deprecatedtrace.TraceQueryFinishFunc
fromgithub.com/graph-gophers/graphql-go
. (#855) - The
TraceField
method of theTracer
fromgithub.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql
now returns atracer.FieldFinishFunc
instead of the deprecatedtrace.TraceFieldFinishFunc
fromgithub.com/graph-gophers/graphql-go
. (#855) - The
TraceValidation
method of theTracer
fromgithub.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql
now returns atracer.ValidationFinishFunc
instead of the deprecatedtrace.TraceValidationFinishFunc
fromgithub.com/graph-gophers/graphql-go
. (#855) - Configure TLS using the system CA for OTLP gRPC exporter connections when configured to connect to external endpoints. (#792)
- Remove
opts ...Option
parameter fromNewHandler
function fromgithub.com/signalfx/splunk-otel-go/instrumentation/net/http/splunkhttp
package. (#947) - Update
go.opentelemetry.io/otel*
dependencies fromv1.6.1
tov1.7.0
. (#926) - Update
go.opentelemetry.io/contrib*
dependencies fromv1.6.0
/v0.31.0
tov1.7.0
/v0.32.0
. (#926)
- Minimize
github.com/signalfx/splunk-otel-go/distro
package to contain only necessary option functions. (#941)- Remove
WithAccessToken
function, useSPLUNK_ACCESS_TOKEN
environment variable instead. - Remove
WithEndpoint
function, use one of theOTEL_EXPORTER_OTLP_ENDPOINT
,OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
,OTEL_EXPORTER_JAEGER_ENDPOINT
environment variables instead. - Remove
WithPropagator
function, useOTEL_PROPAGATORS
environment variable instead. - Remove
WithTraceExporter
function, useOTEL_TRACES_EXPORTER
environment variable instead.
- Remove
- Minimize
github.com/signalfx/splunk-otel-go/instrumentation/net/http/splunkhttp
package to contain only necessary functions and types. (#947)- Remove
WithTraceResponseHeader
function, useSPLUNK_TRACE_RESPONSE_HEADER_ENABLED
environment variable instead. - Remove
TraceResponseHeaderMiddleware
function, useNewHandler
function instead. - Remove
Option
type.
- Remove
- Use the correct Splunk Observability Cloud OTLP over gRPC endpoint
when
SPLUNK_REALM
is set. (#791)
0.8.0 - 2022-04-05
- Add the
WithPropagator
option togithub.com/signalfx/splunk-otel-go/distro
along with parsing of theOTEL_PROPAGATORS
environment variable to set the global OpenTelemetryTextMapPropagator
. (#295) - Add the
WithTraceExporter
andWithTLSConfig
options togithub.com/signalfx/splunk-otel-go/distro
along with parsing of theOTEL_TRACES_EXPORTER
environment variable to set the global OpenTelemetrySpanExporter
used by theSDK
to export traces. (#300) - Add the
splunk.distro.version
attribute to the SDK resource. (#332) - Add the
WithLogger
option togithub.com/signalfx/splunk-otel-go/distro
along with parsing of theOTEL_LOG_LEVEL
environment variable to set the logging level of the default logger used. (#336) - The
github.com/signalfx/splunk-otel-go/distro
package fromgithub.com/signalfx/splunk-otel-go
has been made into its own module. (#492) - The
SPLUNK_REALM
environment variable is now supported. If set, the exporter will use the corresponding Splunk ingest endpoint. (#725)
- The
SDK
fromgithub.com/signalfx/splunk-otel-go/distro
now uses an OTLP exporter by default. The previous default Jaeger thrift exporter can still be used by setting theOTEL_TRACES_EXPORTER
environment variable tojaeger-thrift-splunk
, or by directly passing the user configured exporter with aWithTraceExporter
option. (#300) - Update
go.opentelemetry.io/otel*
dependencies fromv1.3.0
tov1.6.1
. (#406, #471, #656, #721) - Update
go.opentelemetry.io/contrib*
dependencies fromv1.3.0
/v0.28.0
tov1.6.0
/v0.31.0
. (#406, #721) - The
OTEL_TRACES_SAMPLER
environment variable is now honored instead of only defaulting to an always-on sampler. (#724) - Set span limits to the Splunk defaults (the link count is limited to 1000, the attribute value length is limited to 12000, and all other limits are set to be unlimited) if they are not set by the user with environment variables. (#723)
- Consistently import
github.com/jackc/pgx/v4
, instead ofgithub.com/jackc/pgx
, in thegithub.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx
instrumentation. (#478)
0.7.0 - 2022-01-13
- Add the
github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql
instrumentation for thedatabase/sql
package. (#88) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-sql-driver/mysql/splunkmysql
instrumentation for thegithub.com/go-sql-driver/mysql
package. (#90) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx
instrumentation for thegithub.com/jackc/pgx
package. (#91) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/lib/pq/splunkpq
instrumentation for thegithub.com/lib/pq
package. (#92) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/jmoiron/sqlx/splunksqlx
instrumentation for thegithub.com/jmoiron/sqlx
package. (#93) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/jinzhu/gorm/splunkgorm
instrumentation for thegithub.com/jinzhu/gorm
package. (#98) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/confluentinc/confluent-kafka-go/kafka/splunkkafka
instrumentation for thegithub.com/confluentinc/confluent-kafka-go/kafka
package. (#100) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/miekg/dns/splunkdns
instrumentation for thegithub.com/miekg/dns
package. (#155) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/syndtr/goleveldb/leveldb/splunkleveldb
instrumentation for thegithub.com/syndtr/goleveldb/leveldb
package. (#186) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/tidwall/buntdb/splunkbuntdb
instrumentation for thegithub.com/tidwall/buntdb
package. (#228) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/k8s.io/client-go/splunkclient-go
instrumentation for thek8s.io/client-go
package. (#224) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-chi/chi/splunkchi
instrumentation for thegithub.com/go-chi/chi
package. (#227) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/graphql-gophers/graphql-go/splunkgraphql
instrumentation for thegithub.com/graph-gophers/graphql-go
module. (#232) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/julienschmidt/httprouter/splunkhttprouter
instrumentation for thegithub.com/julienschmidt/httprouter
package. (#273) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/github.com/gomodule/redigo/splunkredigo
instrumentation for thegithub.com/gomodule/redigo
package. (#288) - Add the
github.com/signalfx/splunk-otel-go/instrumentation/gopkg.in/olivere/elastic/splunkelastic
instrumentation for thegopkg.in/olivere/elastic
package. (#311)
- Update
go.opentelemetry.io/otel*
dependencies fromv1.0.0-RC3
tov1.3.0
. - Update
go.opentelemetry.io/contrib*
dependencies fromv0.23.0
tov0.28.0
.
0.6.0 - 2021-09-13
The primary change of this release is updating go.opentelemetry.io/otel*
dependencies to v1.0.0-RC3
and
go.opentelemetry.io/contrib*
dependencies to v0.23.0
.
- Update
go.opentelemetry.io/otel*
dependencies fromv1.0.0-RC2
tov1.0.0-RC3
. - Update
go.opentelemetry.io/contrib*
dependencies fromv0.22.0
tov0.23.0
.
The primary change of this release is updating go.opentelemetry.io/otel*
dependencies to v1.0.0-RC2
and
go.opentelemetry.io/contrib*
dependencies to v0.22.0
.
- Update
go.opentelemetry.io/otel*
dependencies fromv1.0.0-RC1
tov1.0.0-RC2
. - Update
go.opentelemetry.io/contrib*
dependencies fromv0.21.0
tov0.22.0
.
0.4.0 - 2021-06-30
The primary change of this release is updating the dependency of go.opentelemetry.io/otel*
packages from v0.20.0
to v1.0.0-RC1
and
go.opentelemetry.io/contrib*
packages from v0.20.0
to v0.21.0
.
- Update
go.opentelemetry.io/otel*
dependencies fromv0.20.0
tov1.0.0-RC1
. - Update
go.opentelemetry.io/contrib*
dependencies fromv0.20.0
tov0.21.0
.
- Drop support for Go 1.14 as
[email protected]
did the same.
0.3.0 - 2021-05-18
The primary changes of this release is added support for sending data directly to Splunk Observability Cloud.
- Add support for setting the Splunk's organization access token
using the
SPLUNK_ACCESS_TOKEN
environmental variable ordistro.WithAccessToken
option. It allows exporters sending data directly to the Splunk Observability Cloud. To do so, theOTEL_EXPORTER_JAEGER_ENDPOINT
ordistro.WithEndpoint
must be set with Splunk back-end ingest endpoint URL:https://ingest.<REALM>.signalfx.com/v2/trace
.
- The default Jaeger exporter URL is now loaded by
go.opentelemetry.io/otel/exporters/trace/jaeger
module. - Applying
distro.WithEndpoint("")
results in no operation.
- Remove
SIGNALFX_ENDPOINT_URL
environmental variable, useOTEL_EXPORTER_JAEGER_ENDPOINT
instead.
0.2.0 - 2021-04-27
The primary change of this release is updating the dependency of go.opentelemetry.io/otel*
packages from v0.19.0
to v0.20.0
and similarly
go.opentelemetry.io/contrib*
packages from v0.19.0
to v0.20.0
.
This includes a fix
in the Jaeger exporter.
This fix removes the duplicate batching that the exporter implemented.
Now the BatchSpanProcessor
that distro
configures by default will not experience
an impedance mismatch with this duplicate batching.
- Update
go.opentelemetry.io/otel*
dependencies fromv0.19.0
tov0.20.0
. - Update
go.opentelemetry.io/contrib*
dependencies fromv0.19.0
tov0.20.0
.
0.1.0 - 2021-04-08
- Add
distro
package providing functionality to quickly setup the OpenTelemetry Go implementation with useful Splunk defaults. - Add
splunkhttp
module providing additional Splunk specific instrumentation fornet/http
.