-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
WIP: query: Expose query API request counts #1420
Conversation
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
87e215d
to
0a2dba6
Compare
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
00ac560
to
96daafb
Compare
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
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.
Thanks!
How this relates to standard HTTP metrics defined for each API call here:
Line 401 in 865d5ec
ins := extpromhttp.NewInstrumentationMiddleware(reg) |
Wonder if it is not duplication bit ): If it is definitely there is some work on docs / example alerts (:
@bwplotka You're definitely right. Apparently, I have overlooked it. In this sense, all the metrics in this component can be replaced by middleware metrics.
If you don't have backwards compatibility concerns, could I remove Maybe it's not the right place when I was checking code base for this PR, I have realized we have similar metrics for Line 76 in 865d5ec
Should we use
receive as well?
I could also help with documentation of metrics and dashboards if it's needed. I recently worked on https://github.com/metalmatze/kube-thanos/tree/master/jsonnet/thanos-mixin, I can help while my caches are hot. cc @brancz |
All of the above sounds good to me! (no compatibility concerns) |
Fully agree here. We are still 0.x releases so it's actually the best moment to define the proper consistent approach here! Makes sense @kakkoyun |
Cool, then I'll close this one and focus on consistent instrumentation in another PR. |
Thanos Query API now exposes
thanos_query_api_instant_query_total
,thanos_query_api_instant_query_failures_total
,thanos_query_api_range_query_total
andthanos_query_api_range_query_failures_total
metrics to track error rates of query API.It also attempts to change the behavior of
thanos_query_api_instant_query_duration_seconds
andthanos_query_api_range_query_duration_seconds
, to track the duration of failed queries as well. (Still not sure about this one, since it'd change existing behavior.Changes
thanos_query_api_instant_query_total
,thanos_query_api_instant_query_failures_total
,thanos_query_api_range_query_total
andthanos_query_api_range_query_failures_total
.Verification
None yet.