2017-06-12 18 views
2

我试图使用一些可用的方法(例如collectd)将Aerospike指标发送到另一个节点。例如,在Aerospike监控指标中,给定两个字段:如X和Y,如何定义和发送衍生指标,如Z = X + Y或X/Y?除了内置的Aerospike指标外,如何定义/发送派生指标

我们可以在接收端计算它,但它会降低整体应用程序的性能。预先感谢您的指导。

谢谢。

回答

4

它不能在Aerospike collectd插件中完成,因为度量标准在读取后或多或少会立即发送。没有变量可以保存已发货的指标。

如果您可以使用Graphite插件,它会跟踪所有收集的指标,然后在最后发送一次。您可以在nmsg line.之前为您的计算指标添加另一节。您必须通过msg []数组搜索源指标。

Nagios插件是一种非常不同的方法。这是一个单一的度量拉,因此需要一个包装脚本来为每个操作数运行插件,并在包装​​器中运行计算。

或者您可以使用您自己的脚本补充现有的插件仅用于派生指标。我们所有的监控插件都使用Aerospike Info Protocol,您可以使用asinfo来收集与以前的Nagios方法类似的操作数指标。

+1

非常感谢您分享我对我的问题的见解。如果我想使用碳收集插件而不是网络插件来运送指标?我能否像您提到的石墨插件一样实施它?我也会考虑你建议的其他方式。 – raymond

+1

我对carbon collectd插件并不熟悉,但表面上看起来它仍然是一个网络运输商,它直接运送到Graphite的Carbon后端,而不是通过Graphite的前端。 当我提到插件以前,我的意思是各种Aerospike监控插件。 – Richard

+1

似乎您可以使用[aggregation-rules.conf](http://graphite.readthedocs.io/en/latest/config-carbon.html#aggregation-rules-conf)从现有指标推导新指标。 – kporter