You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Occasionally, developer will set label values that unable to converge, which make lots of metric series. In the worst case, it will oom the target process or consume lots of cpu/memory.
So I want to add a policy to protect my system, the step is:
If the total metric series less then xx count, just do as before(Inc or Add).
If the total metric series above xx count, add an extra check: if the metric already exist, do as before(because just +/-, no extra memory need), otherwise drop the monitor request and report a error monitor event.
To fulfill above protection policy, I need to know if a specified Counter already exist.
So, I hope maybe we can add function like GetMetricWithLabelvaluesIfExist(maybe not this name but have same meaning) to acquire this information: if i get the metric successfully, return the Counter, otherwise return error.
The text was updated successfully, but these errors were encountered:
The Gatherer interface, implemented by the registry, has the method Gather that returns all metric families that were already collected by the registry.
One could already implement the described behavior by filtering the result by name, but I agree there's a huge inefficiency if you have to loop over all metrics every time you want to do something like that.
Occasionally, developer will set label values that unable to converge, which make lots of metric series. In the worst case, it will oom the target process or consume lots of cpu/memory.
So I want to add a policy to protect my system, the step is:
To fulfill above protection policy, I need to know if a specified Counter already exist.
So, I hope maybe we can add function like GetMetricWithLabelvaluesIfExist(maybe not this name but have same meaning) to acquire this information: if i get the metric successfully, return the Counter, otherwise return error.
The text was updated successfully, but these errors were encountered: