The current library is incredibly difficult to use in a modern Node project that utilizes esbuild for bundling. There is a brief section in the Splunk docs that mentions excluding express from bundling, but it is not sufficient for this library to work when using a bundler.
Several development practices in the library cause runtime errors when combined with esbuild including:
I would prefer to utilize the Splunk APM specific implementations of AlwaysOn Profiling and Runtime metrics, however, the lack of support, documentation, and community adoption makes this challenging. These challenges are not present when utilizing the OTEL-js libraries or auto-instrumentation directly.
Request:
To provide one the following:
A similar esbuild plugin that can be utilized with this library
First-class documentation that details the workarounds necessary to use this library with a bundler such as esbuild
Modules/Examples that can be utilized to feed appropriate profiler and metric data to splunk when using the OTEL libraries directly
Feature Enhancement Request
The current library is incredibly difficult to use in a modern Node project that utilizes esbuild for bundling. There is a brief section in the Splunk docs that mentions excluding express from bundling, but it is not sufficient for this library to work when using a bundler.
Several development practices in the library cause runtime errors when combined with esbuild including:
Datadog provides an esbuild plugin to properly utilize their their OTEL trace wrapper library seen here: https://github.com/DataDog/dd-trace-js/blob/master/packages/datadog-esbuild/index.js https://docs.datadoghq.com/tracing/trace_collection/automatic_instrumentation/dd_libraries/nodejs/#bundling
I would prefer to utilize the Splunk APM specific implementations of AlwaysOn Profiling and Runtime metrics, however, the lack of support, documentation, and community adoption makes this challenging. These challenges are not present when utilizing the OTEL-js libraries or auto-instrumentation directly.
Request: To provide one the following: