将PM2群集统计信息导出到Prometheus,然后导出到Grafana

时间:2018-06-30 21:53:53

标签: grafana pm2 prometheus

我试图将监视添加到Node.js PM2群集中,在该群集中寻找普罗米修斯的汇总统计信息,然后将其导入Grafana。

我已经能够配置prom-client并获得针对prometheus和grafana的单个过程的度量,但不能获取pm2集群。

我提到了https://github.com/siimon/prom-client/issues/165https://github.com/siimon/prom-client/issues/80,都说不可能。

还有其他方法吗?我还提到了https://github.com/redar9/pm2-cluster-prometheus,但无法使其正常运行。

我引用了https://github.com/Unitech/pm2/issues/2035,并且能够在脚本中使用它,并找到哪个是主节点,哪个是从属节点。但是不知道我怎么去那里。

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

我想出了this solution

它可以正确收集所有PM2群集实例的指标。

cluster中不能直接访问pm2模块,而不能直接访问主进程。要返回整个集群的指标,您可以从活动实例向其余实例进行IPC调用,并等待其所有本地收集的指标将被发送。最后,您必须汇总所有收到的指标。

答案 1 :(得分:0)

节点群集与Prometheus的“拉模型”不兼容,因此一种解决方案是使节点将数据推送到“收集器”,Prometheus从中收集数据。例如,statsd应该可以工作。

草图中的想法

node_instance -> statsd_exporter <- Prometheus