在我的设置中,我有一个Java组件从YARN管理器中读取数据,并将各种作业的结果作为指标公开。例如,我有一个任务为 duration 的指标,该指标仅包含上次应用程序运行的持续时间。可能看起来像这样:
duration_time_millis{job="probe",app_name="import-results",app_type="MAPREDUCE",status="SUCCEEDED"}
1991392 @1542770979.823
1991392 @1542770994.823
1991392 @1542771009.823
...
265722 @1542781554.823
265722 @1542781569.823
265722 @1542781584.823
...
问题是,我每隔15秒钟便会刮除一次暴露服务器,但作业每隔几个小时就会不规律地运行一次。这意味着在过去6个小时中,我得到的是第一个值的563倍,第二个值的520倍。因为间隔只有一个变化。
有没有一种方法可以仅对不同的值计算avg
或stddev
?获取不同值的数量还意味着更好地处理grafana中的直方图和热图,其中count_values
似乎不是一个好的解决方案。
谢谢您的帮助!