-
Notifications
You must be signed in to change notification settings - Fork 360
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
feat(translator): Set statPrefix for HCM and TCPProxy #3728
feat(translator): Set statPrefix for HCM and TCPProxy #3728
Conversation
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #3728 +/- ##
=======================================
Coverage 67.59% 67.59%
=======================================
Files 183 183
Lines 22444 22446 +2
=======================================
+ Hits 15171 15173 +2
+ Misses 6194 6193 -1
- Partials 1079 1080 +1 ☔ View full report in Codecov by Sentry. |
I'm not sure this's a good idea or not, especially put hostname on stats, which means more memory cost. |
I put hostname in statPrefix to allow user to inspect metric of
Maybe we can do similar things as contour, remove Footnotes
|
it should be as concise as possible or user input. |
Then I prefer to |
looks better, what's the different between https/passthrough/terminate? |
|
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
what's the different between HTTPS and TLS? |
I think the alpns are HTTP vs others. These terminologies are quite confusing, I need to think a moment every time I see them. These names could be more explicit: (plain)http/https(-terminate)/(plain)tcp/tls-passthrought/tls-terminate |
https means it's a Gateway API listener whose protocol is HTTPS, will be HCM eventually. tls means it's a Gateway API listener whose protocol is TLS, will be TCPProxy eventually. |
Leading with tls prefix for passthrough and terminate is a good idea. |
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
@aoledk In the example of this issue #3160 , port is part of the envoy_listener_http_downstream_rq_completed{envoy_http_conn_manager_prefix="https",envoy_listener_address="0.0.0.0_8080"} 0 |
Only So IMO port should be added to statPrefix. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks for adding the "tls-" prefix to the tls passthrough and tls terminate listeners, which makes the stat prefix easier to understand.
@aoledk - can you regenerate and update the PR description? |
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
03fca6d
to
7dbd2c4
Compare
Done. |
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
can you check why tests are failing @aoledk ? |
Signed-off-by: Dingkang Li <dingkang1743@gmail.com>
previous looks like
now looks like
|
thanks for fixing the e2e test @aoledk, does this change impact the grafana dashboards as well https://gateway.envoyproxy.io/docs/tasks/observability/grafana-integration/ |
/retest |
/retest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for adding this.
What this PR does / why we need it:
Improve metric observability.
http-{port}
for HTTP listenerhttps-{port}
for HTTPS listenertcp-{port}
for TCP listenertls-passthrough-{port}
for TLS passthrough listenertls-terminate-{port}
for TLS terminate listenerWhich issue(s) this PR fixes:
xref #3160