prometheus-cpp
prometheus-cpp copied to clipboard
Summary Quantiles/Errors
Hi, I had a few questions revolving around value settings for quantiles and their corresponding errors.
I noticed there are no errors or exceptions for setting quantile<0 or quantile>1, and similarly for error<0 or error>1. However, when these values get pushed through upon metric creation, I'm not sure what they're actually interpreting.
I see in the Java client, some of the behavior around zero values is explicitly documented:
- You can set an allowed error of 0, but then the Summary will keep all observations in memory.
- You can track the minimum value with .quantile(0.0, 0.0). This special case will not use additional memory even though the allowed error is 0.
- You can track the maximum value with .quantile(1.0, 0.0). This special case will not use additional memory even though the allowed error is 0.
And values outside of the 0/1 bounds are rejected.
Can you help explain the expected behavior for similar values in the prometheus-cpp implementation?
CC @Romain-Geissler-1A @jupp0r