-
Notifications
You must be signed in to change notification settings - Fork 838
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
[next] Use diagnostics_channel for http instrumentations #4319
Comments
/cc @legendecas |
Another topic is likely the context manage. Hooks to get lifecycle of an request is enough to start/end a span and maybe even inject headers. But There is an advanced diag channel API |
Thanks for the info. It came up in the meeting today but nobody brought up the |
I think for client http the req/res objects are bound on the context holding the parent span. |
This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 14 days. |
This issue was closed because it has been stale for 14 days with no activity. |
|
Now that we've removed support for old runtimes, we can use the new diagnostics channels to instrument node core http libraries.
Known issues
http.client.request.start
-event.request
is not writeableBecause the event is emitted after the request is already in flight, we cannot modify the headers. This means we cannot add the required tracing headers for context propagation. We will still need to rely on patching the http and https modules for at least this purpose unless the http channel implementations change.
If nodejs adds something similar to undici's
undici:request:create
, this issue may be solved and we may be able to remove all manual monkeypatching from the instrumentation. In this case, we may even be able to remove{require|import}-in-the-middle
.Context Management
See #4319 (comment) below
The text was updated successfully, but these errors were encountered: