open-telemetry / open-telemetry/opentelemetry-lambda

Re-evaluate RITM externalisation

Open
#2,043 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement javascript
Dominant language
Go
Stars
432
Forks
246
Avg merge
3d 10h
Merged PRs (30d)
47

Description

Is your feature request related to a problem? Please describe.
This issue is mainly for tracking. In https://github.com/open-telemetry/opentelemetry-lambda/pull/2037 we externalised the require-in-the-middle lib from our webpack bundle for the node.js layer, to fix an issue that broke instrumentation that relied on ritm hooking for non-core modules.

Describe the solution you'd like
Fixing upstream would be ideal, so that we can include RITM in our bundle again. In https://github.com/nodejs/require-in-the-middle/issues/120 I offered some insight as well and proposed a solution that could possibly be implemented in the RITM lib.

Describe alternatives you've considered
Keeping RITM externalised.

Tip: React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading PR 2037 and the linked require-in-the-middle issue 120 to understand the externalisation workaround and proposed upstream solution. Done means RITM can be included in the Node.js Lambda bundle again without breaking instrumentation that hooks non-core modules.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, webpack
Domain
backend, build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.