-
Notifications
You must be signed in to change notification settings - Fork 816
Introduce query-tee tool #2203
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
Introduce query-tee tool #2203
Conversation
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 think it's a good first version. I have some comments about how to make it little bit more generic (by honoring backend paths). Also HTTP client configuration seems strange -- I think there are some conflicting options set. It would be good to clarify that.
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.
Nice work and thanks for addressing my feedback.
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.
Very nice! I haven't noticed any test for different backend path prefixes (say one backend using /prefix1/api/v1/query
and other one different prefix), would it be worth having one?
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
…s endpoint Signed-off-by: Marco Pracucci <[email protected]>
…custom path prefixes in the backend Signed-off-by: Marco Pracucci <[email protected]>
…to check whether the response should be considered successful from the proxy perspective Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Signed-off-by: Marco Pracucci <[email protected]>
Thanks for your review @pstibrany!
Makes sense. Done! |
Signed-off-by: Marco Pracucci <[email protected]>
What this PR does:
While working on the experimental blocks storage, we started having the need to compare chunks vs blocks storage in the real world. To do it, we setup a test cluster (with blocks storage) ingesting the same exact series of another cluster with chunks storage. We now have two parallel clusters with the same series and we have the need to query both clusters and compare performances and results.
Given this need, the idea we got is to add a new tool called
query-tee
that exposes the Prometheus API read endpoints and, for each request, send the same request to 2+ backends and make them compete.In this PR:
query-tee
What's out of the scope of this PR:
Which issue(s) this PR fixes:
N/A
Checklist
CHANGELOG.md
updated - the order of entries should be[CHANGE]
,[FEATURE]
,[ENHANCEMENT]
,[BUGFIX]