-
Notifications
You must be signed in to change notification settings - Fork 30k
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
http2: diagnostic use cases #21888
Comments
In our product we capture the high level view of HTTP/2 requests (start/end + selected headers) and one of the main targets is to link them to requests on other processes. So from our point of view tracing is too low level and as the result data goes into a file (mixed with other trace categories) it's also not directly usable. But maybe adding more then one category is the key here. One for the really low level stuff to nail down any bugs/issues in the node core/nghttp2 area and one to have more end user relevant details to allow performance tuning. |
Closing due to lack of engagement from collaborators |
I totally missed this issue until now... I've added a |
From my perspective, lifecycle events would definitely be nice. It's a bit challenging to decide how to express http2, especially with push streams, in a coherent way. From a lower-level perspective, it'd also be nice to have timing info for different stages of the process, like handshaking, decoding/parsing, etc. Something to provide data similar to |
just so I'm clear on it... lifecycle events at what level? are you meaning something like |
Yes, I was thinking |
Heavy to record continuously, yes, but it is something that we can enable a special category for... so that it's only very selectively enabled. |
This came up in the diag WG meeting on 2018-08-22. We don't have the depth to answer this confidently, but thought it would be useful to ping people on twitter to get input from users in the community who have specific use cases in mind. @Qard agreed to do this. |
We tweeted out to promote, but still not feedback so closing. |
@nodejs/http2 @nodejs/diagnostics ... To enable better debugging and observability of http/2, we can emit http2 specific trace events. We currently can emit trace events at the C++ level and will soon be able to emit from JavaScript.
However, there is an important design decision that we need to make first and that is: what specific kinds of details should the http2 trace event log include? There are several levels of detail we can include:
Http2Session
andHttp2Stream
objectsUnfortunately, it's really difficult to decide what kinds of details to emit without a clear set of diagnostic use cases that we want to target so I'd like to use this thread to collect diagnostic use cases for HTTP/2 and we can go from there.
The text was updated successfully, but these errors were encountered: