bri*_*oly 6 javascript linux bash node.js
我有一个分布式服务器系统.
有很多服务器,通过PubSub协调.所有这些都连接到统计服务器.每分钟服务器将其统计信息发送到统计服务器(处理了多少请求,平均时间等).
所以...在这个统计消息中包含系统状态会很好.我需要CPU负载(每个核心)和可用内存量.
我做了一个小的解决方法,并决定用"exec"调用linux命令,解析答案并形成一个JSON数据用于发送.
但是如何从命令行获取此数据?
在Mac OS XI上可以轻松获得我所需要的geektool脚本,但在linux(debian)上它们不起作用.
例如:
top -l 1 | awk '/PhysMem/ {print "Used: " $8 " Free: " $10}'
Run Code Online (Sandbox Code Playgroud)
在Mac OS X Lion上我得到:
Used: 3246M Free: 848M
Run Code Online (Sandbox Code Playgroud)
而debian中只是一个错误......
在Linux上,您可以使用/ proc.请参阅此处获取一系列命令行示例以读取统计信息.
最好直接从Node读取文件,使用fs.readFile()
更新:还有OS API可能更好.用法示例:将Node.js中os.cpus()的输出转换为百分比