Hello Prometheus Community!

There have been many discussions and issues related to the problem of new 
timeseries and the increase() (example: here 
<https://github.com/prometheus/prometheus/issues/1673>, or here 
<https://github.com/prometheus/client_ruby/issues/141>) and even the 
official documentation of Prometheus mentions to "avoid missing metrics 
<https://prometheus.io/docs/practices/instrumentation/#avoid-missing-metrics>". 


The workaround consist in manually initializing our metrics to 0. This can 
become complex with vectors when we don't know in advance the combination 
of label values, moreover we need to be sure the first scrape from 
Prometheus include this 0 value. 

At Goto.com we implemented a solution 
<https://github.com/goto-opensource/smart-prometheus-client> to this 
problem that has been running in production for more than 1 year and we 
decided to open it to the community. 

It's golang library extending the official client that ensure the first 
collection(s) of counters always return 0 instead of their actual value. 
This works for counters/histogram/summaries and the corresponding vectors. 

This is done in the background without anything to add in your application 
code. 


We hope this will help the community, try it! 

feedback are welcome. 


https://github.com/goto-opensource/smart-prometheus-client 

Have a nice day! 
Bruno

-- 
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/63982f2c-32f6-4d91-b694-cd08226203e1n%40googlegroups.com.

Reply via email to