memwatch 和 heapdump 结合使用了 ,但不知道放在,项目的哪一部分合适?

Node项目(Node+Express+Java,webstorm创建的Node框架),项目上线后出现的内存溢出(Javascript heap out of memory),想用memwatch 和 heapdump 结合,对内存监测。
目前把监测的代码写到 bin/www 启动文件中,不知道合适不合适?暂时得到了测试的内存快照并用chrome打开了但是不知道怎么去看数据分析?

/**
 * Event listener for finding memory leaks in Node.JS
 * @type {events.EventEmitter}
 */
var memwatch = require('memwatch-next');
var hd = new memwatch.HeapDiff();
var heapdump = require('heapdump');

memwatch.on('stats', function (stats) {
    console.log(stats);
});

memwatch.on('leak', function (info) {
    var diff = hd.end();
    console.log(JSON.stringify(diff));

    var file = '/tmp/myapp-' + process.pid + '-' + Date.now() + '.heapsnapshot';
    heapdump.writeSnapshot(file, function (err) {
        if (err) {
            console.error(err);
        } else {
            console.error('Wrote snapshot: ' + file);
        }
    });
});
阅读 2.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题