-
Notifications
You must be signed in to change notification settings - Fork 48
contour: parameterise envoy scraping interval #1229
Conversation
This commit adds a parameter `metrics_scrape_interval` using which user can control the envoy's metrics scraping interval. Signed-off-by: Suraj Deshmukh <[email protected]>
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.
I still have a feeling that:
- Increasing scrape interval might not be an optimal solution to solve the problem.
- Such customization seems very specific to me and having large amount of such will make it hard to maintain. I think we have to invest time in making generic customization mechanism. But even then, we will have to deprecate and eventually remove almost all of already added ones.
It would be good if someone experienced with Envoy and Prometheus could have a look at it.
Signed-off-by: Suraj Deshmukh <[email protected]>
This test adds a test case to verify if the newly added parameter `envoy.metrics_scrape_interval` correctly converts and becomes a part of `ServiceMonitor` config. Signed-off-by: Suraj Deshmukh <[email protected]>
Signed-off-by: Suraj Deshmukh <[email protected]>
c0e4c62
to
ee776a5
Compare
This PR does not change anything unless user does. Any why reducing scrape interval might not solve the problem?
What are you suggesting we do in this particular case? I agree we need a generic customization mechanism.
And who would that be? |
I'm not saying it won't solve the problem. I'm saying that it might not be the optimal solution. In #1194 (comment) I suggested testing with different bucket sizes for latency metrics. Or maybe some new metric should be added to Envoy to allow spotting those latency spikes more easily. Increasing scrape interval seems more like a brute-force workaround to me, rather than a proper solution to the problem.
Merge if it's urgent enough, switch focus to generic customization mechanism if not urgent IMO. |
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
The tests were broken in #1229.
This commit adds a parameter to contour's component config, using which now users can choose what (prometheus) scrape interval they want for envoy.
How to use
Deploy contour using following config:
And you can watch the field
interval
vary according to the value ofmetrics_scrape_interval
. If the fieldmetrics_scrape_interval
is not provided then theinterval
field is also left out.kubectl -n projectcontour get servicemonitor envoy -o yaml | grep interval
Fixes: #1194