-
Notifications
You must be signed in to change notification settings - Fork 522
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
Limit the amount of tags in an API response #4158
Comments
Tempo does have the ability to limit the number of tags sent back but only by total bytes and not tag count.
https://grafana.com/docs/tempo/latest/configuration/#standard-overrides This is currently set to 5MB across the board in cloud. Perhaps that's too much? |
Would it be possible to sort and paginate them? |
I'm not sure how to do this well. Imagine a query that finds 100 total values and we return 10 values per page. What do we do if:
This would only work on historical data with an absolute time range and in no other case. |
If they don't and the front end is sent tens of thousands of tags it could previously hang the UI. We've since limited the items we render in the drop down but we still receive large amounts of tags in the API response which may cause a slowdown in the UI as the data is being transferred. The user could still raise an escalation here :D It sounds like the best option is to just set
Given that I've heard of responses with 132,000 tags or possibly even larger perhaps 5MB is too high. cc @mapno |
Agreed. Given that this has turned into a discussion on balancing cloud config, i think we should take it offline. |
Is your feature request related to a problem? Please describe.
Up until recently, we attempted to display unbounded amounts of tags/values on the front end.
Describe the solution you'd like
The limiting of the amount of tags/values send in API responses.
Additional context
We currently limit the amount of tags displayed in front end drop downs to 1000 tags (however users can still search for all of them as they are stored in memory).
Some customers can have 100k+ tags and sending all these back to the front end creates a sluggish experience if not limited in the front end. This limitation has to be added everywhere the tags are rendered. However, the response size is unbounded meaning the actual request itself could freeze up the browser if it is too large.
Ideally, we would not send so many tags to the front end.
While there are improvements (currently in progress) to allow the rendering of large amounts of drop down items within the select component, the question remains, should we really render that many?
The text was updated successfully, but these errors were encountered: