Skip to content
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

reliability: option to safe guard against cardinality explosion #350

Open
eightnoteight opened this issue Dec 5, 2020 · 2 comments
Open

Comments

@eightnoteight
Copy link

prometheus doesn't support cardinality explosion by default, so when applications send a lot of metrics by mistake both statsd exporter and prometheus can get overwhelmed and lead to statsd exporter crashing due to memory or prometheus ingesting thousands of series and crashing or slow ingestion + slow queries.

So essentially I'm proposing a cli option to only maintain first N metric series received. and the rest to be simply dropped. Any thoughts on this area?

@matthiasr
Copy link
Contributor

Hmm. I like the idea, but I am not sure how to make it "good" for users. The statsd protocol does not let us "reject" metrics so I am worried about silently dropping data. Combined with TTLs expiring old metrics, it could be very hard to understand what is going on.
How would you like to get insight when this limit is hit?

@fpetkovski
Copy link

How would you like to get insight when this limit is hit?

I think this could potentially be solved by emitting a metric when the limit is hit and outputting an error log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants