Node.js 是否可以读取/proc/{pid}/stat,然后实时传输到客户端?
假设我想要监视mysql,据我所知,所有mysql运行时信息都存储在Node.js 是否可以读取/proc/{pid}/stat,然后实时传输到客户端?,node.js,monitoring,Node.js,Monitoring,假设我想要监视mysql,据我所知,所有mysql运行时信息都存储在/proc/{mysql\u pid}/stat中。那么,是否可以通过node.js读取和解析mysql统计信息,并在客户端实时显示图表 nagios和alternative太重了,有时候我只想监控一些进度信息。所以我想要一个轻量级的解决方案。我尝试使用,这是一个非常好的库。然而,当stat文件发生更改时,proc文件系统似乎不会发生inotify事件。但是,如果您正在普通文件系统上查看文件,则可以使用该库执行以下操作: sys
/proc/{mysql\u pid}/stat
中。那么,是否可以通过node.js读取和解析mysql统计信息,并在客户端实时显示图表
nagios和alternative太重了,有时候我只想监控一些进度信息。所以我想要一个轻量级的解决方案。我尝试使用,这是一个非常好的库。然而,当stat文件发生更改时,proc文件系统似乎不会发生inotify事件。但是,如果您正在普通文件系统上查看文件,则可以使用该库执行以下操作:
sys = require('sys');
fs = require('fs');
Inotify = require('inotify').Inotify;
var inotify = new Inotify();
function callback(ev) {
console.log(sys.inspect(ev));
}
var home_dir = {
path: '/proc/5499/stat'
, watch_for: Inotify.IN_ALL_EVENTS
, callback: callback
};
var home_watch_descriptor = inotify.addWatch(home_dir);
只需将Inotify.IN_ALL_EVENTS更改为您想要关注的任何操作,这在我链接的github页面上有记录
很抱歉,这不能解决您的特定问题,但我想我会以信息的方式发布它。我假设您还没有尝试实施解决问题的方案。你说的“实时”到底是什么意思?你在说什么样的客户 如果你说的是一个web浏览器客户端,你没有理由不能每半秒钟更新一次某种类型的显示(或者更快,如果图表不是太复杂的话) 如果你想要一个更具体的答案,你应该更具体