首页 > 解决方案 > 使用 top 和 nodeJS 创建时间序列

问题描述

我想创建一个时间序列并将其注入 InfluxDb 进行演示。我想过使用top命令(top -pid 1393 -stats cpu),并使用CPU值。然后使用 NodeJS 提取数据并将其注入 InfluxDB。但是,有几个但是...: 1- top 命令有一个显示部分:可以删除它吗?2- 在 Node 中,我会(重复地)调用“top -pid 1393 -stats cpu -l 1”和“-l 1”选项,只得到一个样本。我觉得这是对 top 以给定间隔生成数据的事实的滥用(基本上,我在 Node 中重新创建了 top 自动执行的操作)

有没有更好的方法来做到这一点 - 在理想的世界中,我会在节点中启动 top 并以异步方式将输出流“管道”到变量(以执行插入 InfluxDB)。

感谢您提供的任何提示。基督教

标签: node.jstime-seriesinfluxdb

解决方案


要监控进程的资源消耗指标(如果我把你的意图弄错了,请纠正我),你根本不需要你的 NodeJS 东西。

您只需要在目标机器上运行 Telegraf 代理并配置此插件即可。

将输出插件指向您的 Influx - 就是这样。


推荐阅读