prometheus/prometheus
View on GitHubSet and check (and document) a global label_value_length_limit
Open
#16525 opened on Apr 30, 2025
component/documentationcomponent/scrapinggood first issuehelp wantedkind/featurepriority/P3
Description
Proposal
Prometheus has label_name_length_limit and label_value_length_limit, currently defaulted to no limit.
After #16069, Prometheus will crash if you give it a name or value longer than 16MB, so we should at least have a default limit lower than that.
I think that a reasonable limit would be more like 200 bytes, but I am aware of people doing exciting things like storing a bitmap in a label. Maybe we could go with something like 1MB?
The code checking limits while scraping would need to check before constructing the Labels data structure, and we should check in other places such as the remote-write receiver, label_replace, label_join.