-
我们这边打算把业务指标打点数据(像接口调用量、交易次数等)上报到夜莺系统。具体的方法是把指标数据使用http post方法推送到categraf的opentsdb协议接口上(/api/push/openfalcon),再通过n9e-server存储到后端prometheus里。 在上报单个metric时(如trade_num{type="pintuan"}),数据没有问题。 目前看这个问题主要出在prometheus的数据存储机制上(push 1个点时,拉取了多次,导致聚合计算时不准确),我们之前用influxdb的时候都没有出现类似问题(因为influxdb存储时,上报1个点就是一个点),不知道理解正确不正确。 请问各位大佬怎么处理类似业务指标上报场景的? |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 4 replies
-
prometheus 的启动命令里增加这么一个参数: |
Beta Was this translation helpful? Give feedback.
-
你是想计算一分钟总共有多少次调用?试试 |
Beta Was this translation helpful? Give feedback.
-
我也不太熟,应该是有一些数据外推的逻辑导致的,sum_over_time没有数据外推 |
Beta Was this translation helpful? Give feedback.
-
可以考虑原生的prometheus-sdk推送到categraf 如果使用prometheus原生的counter统计,counter是累加的,记录的时序指标是(t,1),(t+15s,2),(t+30s,3),(t+45s,4),(t+60s,5)... 如果不加任何查询函数的话,prometheus不会知道查询到多条数据如果处理,印象中只展示step中最后一个查到的数据 prometheus counter这种设计有非常多的优势...具体可以自己研究下 |
Beta Was this translation helpful? Give feedback.
你是想计算一分钟总共有多少次调用?试试
sum(sum_over_time(z_bandwitdh_in_guage)[1m])