我正在尝试向 Node.js PM2 集群添加监控,我在其中寻找 prometheus 中的聚合统计信息,然后将其导入 Grafana。
我已经能够为 prometheus 和 grafana 而不是 pm2 集群配置 prom-client 并获取单个进程的指标。
我提到了https://github.com/siimon/prom-client/issues/165和 https://github.com/siimon/prom-client/issues/80两人都说不可能。
还有其他方法吗?我还提到了https://github.com/redar9/pm2-cluster-prometheus但不能让它正常工作。
我提到了https://github.com/Unitech/pm2/issues/2035我能够在我的脚本中使用它并找到哪个是主人,哪个是奴隶。但不确定我如何从那里继续前进。
任何帮助表示赞赏。
最佳答案
我想出了this solution .
它在 PM2 集群的所有实例中正确收集指标。
而不是 cluster
模块无法直接访问 pm2
中的主进程.要返回整个集群的指标,您可以从事件实例向其余实例执行 IPC 调用,然后等待发送所有本地收集的指标。最后,您必须汇总所有收到的指标。
关于grafana - 将 PM2 集群统计信息导出到 Prometheus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51118808/