http2: add header map stats histograms#45479
Conversation
Signed-off-by: Yan Avlasov <[email protected]>
Signed-off-by: Yan Avlasov <[email protected]>
| if (stream) { | ||
| const int32_t stream_id = stream->stream_id_; | ||
|
|
||
| recordHistogramsForStream(*stream); |
There was a problem hiding this comment.
do we want to record zero values for those histograms when stream is closed and headers have not been received yet (could skew the data)? we could add a check here if any headers have been received.
There was a problem hiding this comment.
It is probably ok, since the more interesting data is the maximum values.
wbpcode
left a comment
There was a problem hiding this comment.
histogram is not cheap. do we actually need this or actually access log could provide the same observability?
wbpcode
left a comment
There was a problem hiding this comment.
histogram is not cheap. do we actually need this or actually access log could provide the same observability?
I do not think we have this data for the access log. The histogram is disabled by default and is an aid for users who need to tune cookie sizes. This will be removed once we have determined good limits on the H/2 cookie headers. |
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats. * header_count - total count of header entries received (including individual ``cookie`` headers) * header_list_size - total byte size of header map entries, total length of the re-assembled ``cookie`` * cookie_count - count of individual ``cookie`` headers. * cookie_size - size of re-assembled ``cookie`` headers. Histograms are disabled by default and can be enabled by setting the runtime guard ``envoy.reloadable_features.http2_record_histograms`` to ``true``. Risk Level: low Testing: unit tests Docs Changes: yes Release Notes: yes Platform Specific Features: no Runtime guard: envoy.reloadable_features.http2_record_histograms --------- Signed-off-by: Yan Avlasov <[email protected]>
Add histograms for HTTP/2 header map stats.
cookieheaders)cookiecookieheaders.cookieheaders.Histograms are disabled by default and can be enabled by
setting the runtime guard
envoy.reloadable_features.http2_record_histogramstotrue.Risk Level: low
Testing: unit tests
Docs Changes: yes
Release Notes: yes
Platform Specific Features: no
Runtime guard: envoy.reloadable_features.http2_record_histograms