Skip to content

Releases: signalfx/splunk-otel-js

v3.0.0

10 Jan 14:29
v3.0.0
48a6b5e
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.30.0 0.57.0

Changes

Warning

Breaking changes

  • Raise the minimum required Node.js version to 18. If Node <18 is a requirement, 2.x is still maintained and package versions 2.x can be used.
  • Change the default OTLP protocol from grpc to http/protobuf. The default exporting endpoint has been changed from http://localhost:4317 to http://localhost:4318. Signal specific URL paths are automatically added when choosing the endpoint, e.g. when endpoint is set to http://collector:4318, /v1/traces is added for traces.
  • Change the default sampler from parentbased_always_on to always_on.
  • Profiling configuration: resource: Resource field has been changed to resourceFactory: (resource: Resource) => Resource to bring it in line with tracing and metrics configuration.
  • Improve the start API to avoid duplicating parameters in the signal specific configuration.

    • Add resource field - a function which can be used to overwrite or add additional parameters to the resource detected from the environment.

      import { start } from '@splunk/otel';
      import { Resource } from '@opentelemetry/resources';
      
      start({
        serviceName: 'example',
        resource: (detectedResource) => {
          return detectedResource.merge(new Resource({ 'service.version': '0.2.0' }));
        },
      });
    • Add realm field. When set passes the access token and realm to signals.

      import { start } from '@splunk/otel';
      
      start({
        serviceName: 'example',
        realm: 'us0',
        accessToken: '<token>'
      });
      
      // Traces and metrics are now sent to the us0 backend.

    Signal specific options can still be used and take preference over the shared configuration options.

  • splunk.distro.version (automatically added resource attribute) has been removed and is replaced with telemetry.distro.version and telemetry.distro.name.

  • SPLUNK_METRICS_ENDPOINT environment variable has been removed. Use the OpenTelemetry specific OTEL_EXPORTER_OTLP_METRICS_ENDPOINT instead.

  • Fix logging of service.name attribute not set from each signal, when the service name is not set.

  • Add prebuilt binaries for Node.js 22 and 23.

  • Upgrade to OpenTelemetry 1.30.0 / 0.57.0.

v3.0.0-rc1

07 Jan 14:29
061064f
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.30.0 0.57.0

Changes

  • Raise the minimum required Node.js version to 18. If Node <18 is a requirement, 2.x is still maintained and package versions 2.x can be used..

  • Change the default OTLP protocol from grpc to http/protobuf. The default exporting endpoint has been changed from http://localhost:4317 to http://localhost:4318. Signal specific URL paths are automatically added when choosing the endpoint, e.g. when endpoint is set to http://collector:4318, /v1/traces is added for traces.

  • Change the default sampler from parentbased_always_on to always_on.

  • Improve the start API to avoid duplicating parameters in the signal specific configuration.

    • Add resource field - a function which can be used to overwrite or add additional parameters to the resource detected from the environment.

      import { start } from '@splunk/otel';
      import { Resource } from '@opentelemetry/resources';
      
      start({
        serviceName: 'example',
        resource: (detectedResource) => {
          return detectedResource.merge(new Resource({ 'service.version': '0.2.0' }));
        },
      });
    • Add realm field. When set passes the access token and realm to signals.

      import { start } from '@splunk/otel';
      
      start({
        serviceName: 'example',
        realm: 'us0',
        accessToken: '<token>'
      });
      
      // Traces and metrics are now sent to the us0 backend.

    Signal specific options can still be used and take preference over the shared configuration options.

  • Profiling configuration: resource: Resource field has been changed to resourceFactory: (resource: Resource) => Resource to bring it in line with tracing and metrics configuration.

  • splunk.distro.version (automatically added resource attribute) has been removed and is replaced with telemetry.distro.version and telemetry.distro.name.

  • SPLUNK_METRICS_ENDPOINT environment variable has been removed. Use the OpenTelemetry specific OTEL_EXPORTER_OTLP_METRICS_ENDPOINT instead.

  • Fix logging of service.name attribute not set from each signal, when the service name is not set.

  • Add prebuilt binaries for Node.js 22 and 23.

  • Upgrade to OpenTelemetry 1.30.0 / 0.57.0.

v2.15.0

05 Dec 11:04
1b41169
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.28.0 0.55.0

Changes

  • Upgrade to OpenTelemetry 1.28.0 / 0.55.0. #987

v2.14.0

29 Oct 14:27
c89f1a9
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.26.0 0.53.0

Changes

  • Add Node.js 22 to prebuilds. #963

v2.13.0

27 Sep 12:00
d747bab
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.26.0 0.53.0

Changes

  • Add an optional workaround for Next.js span cardinality issues. Can be enabled by setting SPLUNK_NEXTJS_FIX_ENABLED to true. #957

v2.12.0

03 Sep 08:47
fd9a71c
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.26.0 0.53.0

Changes

  • Add resourceFactory option for traces. Allows for customization of the detected resource. Previously a resource could be provided via tracerConfig, but this overwrote the detected attributes. For backwards compatibility the latter option is still possible. #938
  • Support none value for OTEL_TRACES_EXPORTER and OTEL_METRICS_EXPORTER environment variables. #939
  • Use the default OTEL_BSP_SCHEDULE_DELAY of 5000 instead of 500. This was a workaround for an old BatchSpanProcessor bug where it failed to flush spans fully. #940
  • Disable log sending for Winston instrumentation by default. Add winston-transport package as a dependency in case log collection is enabled. #941
  • Use a synchronous container detector from upstream. #944
  • Add deprecation annotations to signal-specific start calls. #885
  • Upgrade to OpenTelemetry 1.26.0 / 0.53.0. #945

v2.11.0

14 Aug 17:28
53bc1d4
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.25.1 0.52.1

Changes

  • Bundle instrumentations for undici, socket.io and lru-memoizer by default. #934

v2.10.0

31 Jul 12:19
f728a89
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.25.1 0.52.1

Changes

  • Use environment, process, host and OS detectors from upstream. Update container detector to support cgroup v2. #925
  • Use explicit imports when loading instrumentations #926

v2.9.0

08 Jul 10:15
a191aa3
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.25.1 0.52.1

Changes

  • Upgrade to OpenTelemetry 1.25.1 / 0.52.1. #912
  • Use kafkajs instrumentation from upstream. #913

v2.8.0

26 Apr 09:20
4d0a1b5
Compare
Choose a tag to compare
Open Telemetry API Core Instrumentations
1.8.0 1.24.0 0.51.0

Changes

  • Upgrade to OpenTelemetry 1.24.0 / 0.51.0. #902