Package Exports
- opentelemetry-instrumentation-fetch-node
- opentelemetry-instrumentation-fetch-node/build/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (opentelemetry-instrumentation-fetch-node) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
opentelemetry-instrumentation-fetch-node
OpenTelemetry Node 18+ native fetch automatic instrumentation package.
Existing instrumentation packages (like @opentelemetry/instrumentation-http) do not work with Node 18+ native fetch, which is based on the undici module but packaged in a "strange" way (some sort of internal bundle that I don't really understand). This module uses the new Node diagnostics channel to instrument native fetch.
Note that due to the fact that fetch is lazy loaded in Node, this module will kick off a "phony" fetch to an unparseable URL (blank string) to get the library to load so we don't miss any events (because the diagnostics channel would not yet exist).
See the tests for an example setup - note the onRequest event that allows you to add outbound headers or span attributes or what have you.
