-
Notifications
You must be signed in to change notification settings - Fork 810
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[instrumentation] support ESM instrumentation for Node.js v18.19, v20, v21 #4553
Comments
Will release |
I found the release PR at #4677, installed it from there and built it with "npm run build". Then I referred to them with yarn "resolutions" in my project's package.json to give it a test run. The built code in
There is a related open issue at #3954 when consuming the CJS version, but afaik here we're consuming the ESM version. Is this expected? |
What's the best place to track work towards full ESM support? |
@gajus I think perhaps open-telemetry/opentelemetry-js-contrib#1942 for now. |
Does this mean that |
For hooking (One current exception is the use of diagnostic_channels for instrumentation the |
I was mistaken: There is a release of |
Regarding this point, I think this would accelerate a lot more with more end to end documentation. A while back, I tried adding native instrumentation to https://github.com/gajus/slonik, but was confused by the lack of end to end examples of how to instrument libraries (as opposed to apps). |
Currently we use an older version of import-in-the-middle that does not work with
We're blocked on updating to import-in-the-middle@1.7.3 here as that version includes a bug (nodejs/import-in-the-middle#57) which breaks our way of detecting ESM packages. We do this ESM detection in multiple packages in contrib (see open-telemetry/opentelemetry-js-contrib#2021).
To resolve this issue there are two options:
@@toStringTag
property not present on modules passed tohookFn
nodejs/import-in-the-middle#57 upstreamOption 2: implement a workaround in the contrib repo(going for option 1)Regardless of the option chosen above, we then need to:
import-in-the-middle
version in coreimport-in-the-middle
from the ignore list inrenovate.json
@opentelemetry/instrumentation
(done by a maintainer)The text was updated successfully, but these errors were encountered: