prometheus的上报api在:https://github.com/prometheus/client_golang
VictoriasMetrics的上报API在:https://github.com/VictoriaMetrics/metrics/releases/tag/v1.18.1
如果vm-agent, vm-insert, vm-storage, vm-select等等全套组件都用上了VM,是否业务代码中的上报API也可以用vm提供的?
阅读了一下源码,感受如下:
- api很简单很快,希望上报API对业务的性能影响小的场景,建议用这套API
- 对于某些metric的label经常变化的场景,比较麻烦;那种初始化就决定用哪些label的场景更合适;
- 没有限制内存,没有限制metric的数量,没有过期淘汰机制;错误的使用可能导致metric的数量太多而影响服务稳定;
- 错误的使用可能导致GC压力增大;
已经给VM提了 issue ,希望未来VM提供远比prometheus好且工业化程度高的API。