-
Notifications
You must be signed in to change notification settings - Fork 544
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
Return server-side total bytes processed statistics as a header through query frontend #9645
Return server-side total bytes processed statistics as a header through query frontend #9645
Conversation
…gh the query frontend
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 for this PR! Instead of adding another header for the query-frontend to send, please add this new value to the existing Server-Timing
header with the key bytes_processed
.
@56quarters - Thank you for your feedback! |
I understand that parsing is simpler with a dedicated header but my preference is to minimize proliferation of custom headers that Mimir uses. I'd rather use the existing |
@56quarters - Thank you for the clarification! I’ve updated the PR to add the bytes processed stats into the existing Server-Timing header as requested. Let me know if there’s anything else you’d like me to address. |
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.
Looks great, thank you!
Looks like there are a few integration tests that need to be updated to work with the new key. |
Looking into these now. |
I've pushed a commit that should fix the failing tests. |
What this PR does
This pull request adds bytes-processed statistics to the existing
Server-Timing
HTTP header in the query frontend. It provides information about the total bytes processed by Mimir for a query request that passes through the query frontend. This information will be useful for assessing user behaviour and applying rate limiting when users run expensive, long-range Mimir queries. It will help mitigate slow performance or occasional downtime in Mimir.Which issue(s) this PR fixes or relates to
None
Checklist
CHANGELOG.md
updated