diff --git a/docs/tutorials/setup-opentelemetry.md b/docs/tutorials/setup-opentelemetry.md index 3d7cb4bb4b..cc4eed15a5 100644 --- a/docs/tutorials/setup-opentelemetry.md +++ b/docs/tutorials/setup-opentelemetry.md @@ -27,6 +27,11 @@ yarn --cwd packages/backend add \ In your `packages/backend/src` folder, create an `instrumentation.js` file. ```typescript title="in packages/backend/src/instrumentation.js" +// Prevent from running more than once (due to worker threads) +if (!require('node:worker_threads').isMainThread) { + return; +} + const { NodeSDK } = require('@opentelemetry/sdk-node'); const { getNodeAutoInstrumentations, diff --git a/packages/backend/src/instrumentation.js b/packages/backend/src/instrumentation.js index e3725632c1..ac2f292c27 100644 --- a/packages/backend/src/instrumentation.js +++ b/packages/backend/src/instrumentation.js @@ -14,6 +14,11 @@ * limitations under the License. */ +// Prevent from running more than once (due to worker threads) +if (!require('node:worker_threads').isMainThread) { + return; +} + const { NodeSDK } = require('@opentelemetry/sdk-node'); const { getNodeAutoInstrumentations,