Skip to content

Releases: signalfx/splunk-otel-go

v1.4.0

02 Mar 17:58
v1.4.0
f8e593b
Compare
Choose a tag to compare

The release adds metrics support. Set OTEL_METRICS_EXPORTER=otlp to enable metrics support. However, take notice that as for now the OpenTelemetry Go metrics API is not stable (v0.37.0).

This upgrades OpenTelemetry Go to v1.14.0/v0.37.0/v0.0.4 and OpenTelemetry Go Contrib to v1.15.0/v0.40.0/v0.9.0.

Added

  • Add metrics support and OTEL_METRICS_EXPORTER environment variable.OTEL_METRICS_EXPORTER accepts: none - metrics disabled, otlp - OTLP gRPC exporter. Currently OTEL_METRICS_EXPORTER defaults to none as OpenTelemetry Go metrics API and SDK are not stable yet. Set OTEL_METRICS_EXPORTER=otlp to enable metrics support.
  • Add process and Go runtime attributes to resource.
  • Add runtime metrics instrumentation.

v1.3.1

08 Feb 18:42
v1.3.1
15cffbe
Compare
Choose a tag to compare

v1.3.0

01 Feb 17:30
v1.3.0
0284dee
Compare
Choose a tag to compare

This upgrades OpenTelemetry Go to v1.12.0/v0.35.0 and OpenTelemetry Go Contrib to v1.13.0/v0.38.0/v0.7.0.

Fixed

  • The goroutine created by the Open function in github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql is no longer orphaned. (#1682)

Added

  • The NetSockFamily type and related variables to be use in the ConnectionConfig from github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql. (#1749)

Changed

  • Add the NetSockFamily field to the ConnectionConfig in github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql. This is used to define the protocol address family used for communication with the database. (#1749)
  • Update go.opentelemetry.io/otel/semconv to v1.17.0 in the following packages. (#1749)
    • github.com/signalfx/splunk-otel-go/distro
    • github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/confluentinc/confluent-kafka-go/kafka/splunkkafka
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-chi/chi/splunkchi
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-sql-driver/mysql/splunkmysql
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/gomodule/redigo/splunkredigo
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/syndtr/goleveldb/leveldb/splunkleveldb
    • github.com/signalfx/splunk-otel-go/instrumentation/github.com/tidwall/buntdb/splunkbuntdb
    • github.com/signalfx/splunk-otel-go/instrumentation/gopkg.in/olivere/elastic/splunkelastic
    • github.com/signalfx/splunk-otel-go/instrumentation/k8s.io/client-go/splunkclient-go

Deprecated

  • The NetTransportIP and NetTransportUnix variables from github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql are deprecated as they are no longer available in go.opentelemetry.io/otel/semconv/v1.17.0. Use an appropriate NetSockFamily* variable instead. (#1749)

v1.2.0

12 Jan 17:26
v1.2.0
a58c95a
Compare
Choose a tag to compare

This upgrades OpenTelemetry Go to v1.11.2/v0.34.0 and OpenTelemetry Go Contrib to v1.12.0/v0.37.0/v0.6.0.

Added

  • OTEL_LOG_LEVEL environment variable accepts case insensitive values. (#1374)

Removed

  • Drop support for Go 1.17 as go.opentelemetry.io did the same in v1.11.0. (#1570)

v1.1.0

14 Jul 05:26
v1.1.0
257fa9f
Compare
Choose a tag to compare

This release uses OpenTelemetry Go v1.8.0 and
OpenTelemetry Go Contrib v1.8.0/v0.33.0.

Changed

Removed

  • Drop support for Go 1.16 as go.opentelemetry.io did the same in
    v1.7.0. (#1172)

v1.0.0

09 Jun 07:07
v1.0.0
17c31a7
Compare
Choose a tag to compare

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.

v0.9.0

26 May 20:30
v0.9.0
db7d0be
Compare
Choose a tag to compare
v0.9.0 Pre-release
Pre-release

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.

Changed

  • The NewTracer function from github.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql now returns a tracer.Tracer instead of the deprecated trace.Tracer from github.com/graph-gophers/graphql-go. (#855)
  • The TraceQuery method of the Tracer from github.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql now returns a tracer.QueryFinishFunc instead of the deprecated trace.TraceQueryFinishFunc from github.com/graph-gophers/graphql-go. (#855)
  • The TraceField method of the Tracer from github.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql now returns a tracer.FieldFinishFunc instead of the deprecated trace.TraceFieldFinishFunc from github.com/graph-gophers/graphql-go. (#855)
  • The TraceValidation method of the Tracer from github.com/signalfx/splunk-otel-go/instrumentation/github.com/graphql-gophers/graphql-go/splunkgraphql now returns a tracer.ValidationFinishFunc instead of the deprecated trace.TraceValidationFinishFunc from github.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 from NewHandler function from github.com/signalfx/splunk-otel-go/instrumentation/net/http/splunkhttp
    package. (#947)
  • Update go.opentelemetry.io/otel* dependencies from v1.6.1 to v1.7.0. (#926)
  • Update go.opentelemetry.io/contrib* dependencies from v1.6.0/v0.31.0 to v1.7.0/v0.32.0. (#926)

Removed

  • Minimize github.com/signalfx/splunk-otel-go/distro package to contain only necessary option functions. (#941)
    • Remove WithAccessToken function, use SPLUNK_ACCESS_TOKEN environment variable instead.
    • Remove WithEndpoint function, use one of the OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, OTEL_EXPORTER_JAEGER_ENDPOINT environment variables instead.
    • Remove WithPropagator function, use OTEL_PROPAGATORS environment variable instead.
    • Remove WithTraceExporter function, use OTEL_TRACES_EXPORTER environment variable instead.
  • Minimize github.com/signalfx/splunk-otel-go/instrumentation/net/http/splunkhttp package to contain only necessary functions and types. (#947)
    • Remove WithTraceResponseHeader function, use SPLUNK_TRACE_RESPONSE_HEADER_ENABLED environment variable instead.
    • Remove TraceResponseHeaderMiddleware function, use NewHandler function instead.
    • Remove Option type.

Fixed

  • Use the correct Splunk Observability Cloud OTLP over gRPC endpoint when SPLUNK_REALM is set. (#791)

v0.8.0

05 Apr 20:27
v0.8.0
620cbe1
Compare
Choose a tag to compare
v0.8.0 Pre-release
Pre-release

Added

  • Add the WithPropagator option to github.com/signalfx/splunk-otel-go/distro along with parsing of the OTEL_PROPAGATORS environment variable to set the global OpenTelemetry TextMapPropagator. (#295)
  • Add the WithTraceExporter and WithTLSConfig options to github.com/signalfx/splunk-otel-go/distro along with parsing of the OTEL_TRACES_EXPORTER environment variable to set the global OpenTelemetry SpanExporter used by the SDK to export traces. (#300)
  • Add the splunk.distro.version attribute to the SDK resource. (#332)
  • Add the WithLogger option to github.com/signalfx/splunk-otel-go/distro along with parsing of the OTEL_LOG_LEVEL environment variable to set the logging level of the default logger used. (#336)
  • The github.com/signalfx/splunk-otel-go/distro package from github.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)

Changed

  • The SDK from github.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 the OTEL_TRACES_EXPORTER environment variable to jaeger-thrift-splunk, or by directly passing the user configured exporter with a WithTraceExporter option. (#300)
  • Update go.opentelemetry.io/otel* dependencies from [v1.3.0][otel-v1.3.0] to [v1.6.1][otel-v1.6.1]. (#406, #471, #656, #721)
  • Update go.opentelemetry.io/contrib* dependencies from [v1.3.0/v0.28.0][contrib-v1.3.0] to [v1.6.0/v0.31.0][contrib-v1.6.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)

Fixed

  • Consistently import github.com/jackc/pgx/v4, instead of github.com/jackc/pgx, in the github.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx instrumentation. (#478)

v0.7.0

13 Jan 17:52
v0.7.0
8ec2c9e
Compare
Choose a tag to compare
v0.7.0 Pre-release
Pre-release

Added

  • Add the github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql instrumentation for the database/sql package. (#88)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-sql-driver/mysql/splunkmysql instrumentation for the github.com/go-sql-driver/mysql package. (#90)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/jackc/pgx/splunkpgx instrumentation for the github.com/jackc/pgx package. (#91)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/lib/pq/splunkpq instrumentation for the github.com/lib/pq package. (#92)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/jmoiron/sqlx/splunksqlx
    instrumentation for the github.com/jmoiron/sqlx package. (#93)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/jinzhu/gorm/splunkgorm instrumentation for the github.com/jinzhu/gorm package. (#98)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/confluentinc/confluent-kafka-go/kafka/splunkkafka instrumentation for the github.com/confluentinc/confluent-kafka-go/kafka package. (#100)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/miekg/dns/splunkdns instrumentation for the github.com/miekg/dns package. (#155)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/syndtr/goleveldb/leveldb/splunkleveldb instrumentation for the github.com/syndtr/goleveldb/leveldb package. (#186)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/tidwall/buntdb/splunkbuntdb instrumentation for the github.com/tidwall/buntdb package. (#228)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/k8s.io/client-go/splunkclient-go instrumentation for the k8s.io/client-go package. (#224)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/go-chi/chi/splunkchi instrumentation for the github.com/go-chi/chi package. (#227)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/graphql-gophers/graphql-go/splunkgraphql instrumentation for the github.com/graph-gophers/graphql-go module. (#232)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/julienschmidt/httprouter/splunkhttprouter instrumentation for the github.com/julienschmidt/httprouter package. (#273)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/github.com/gomodule/redigo/splunkredigo instrumentation for the github.com/gomodule/redigo package. (#288)
  • Add the github.com/signalfx/splunk-otel-go/instrumentation/gopkg.in/olivere/elastic/splunkelastic instrumentation for the gopkg.in/olivere/elastic package. (#311)

Changed

v0.6.0

13 Sep 11:35
v0.6.0
dc5f267
Compare
Choose a tag to compare
v0.6.0 Pre-release
Pre-release

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.

Changed