轻量级的 Node.js 项目内核性能监控 + 分析工具,在默认模式下,只需要在项目入口文件 require 一次,无需改动任何业务代码即可开启内核级别的性能监控分析。
Easy-Monitor 旨在帮助大家更深入的理解自己的 Node 项目进程,以便性能优化时能更有针对性,最终提升大家的项目体验。
目前经过测试,兼容以下 Node.js 版本:
因为 Node.js 的 LTS 版本都是偶数版本,所以此处并未对于奇数版本进行测试(v5.x,v7.x),如果有测试过的可以以 issue 的形式将兼容性结果反馈。
注:Node v8.x 截止目前为止 (2017.6.6) 下使用 v8-profiler 有 Segmentation fault (core dumped) 的核心错误,并且官方 issue 修复较慢 ( issue 112 ), 故经排查源代码后发布了 v8-profiler-node8 临时解决了这个 bug,等官方修复后,会将 Easy-Monitor 的依赖切回 v8-profiler 。
执行如下命令安装 Easy-Monitor:
npm install easy-monitor
在你的项目入口文件中按照如下方式引入,当然请传入你的项目名称:
const easyMonitor = require('easy-monitor');
easyMonitor('你的项目名称');
好了,此时你所需要做的一切都已就绪,接下来以你喜欢的方式运行项目即可,不管是 nohup 还是 pm2,亦或是直接 node 启动均可。
打开你的浏览器,访问 http://localhost:12333 ,即可看到进程界面。
为了帮助大家更好的理解使用,下面编写一个 Easy-Monitor 嵌入 Express 应用的完整例子
'use strict';
const easyMonitor = require('easy-monitor');
easyMonitor('Mercury');
const express = require('express');
const app = express();
app.get('/hello', function (req, res, next) {
res.send('hello');
});
app.listen(8082);
将上述的内容保存成一个 js 文件,启动后访问 http://127.0.0.1:12333 即进入 Easy-Monitor 的首页,就是这样的简单!
这里有一个在线真实的 Demo 地址:Easy-Monitor Demo,可以点击进入自行尝试一番。
深度定制化开发、通用配置项以及如何动态更新配置项详见 Easy-Monitor 详细文档
图文指南,参见 Easy-Monitor 2.0: 开启你的 Node.js 内核性能监控
v2.1.0:
v2.1.1:
v2.1.2:
v2.1.3:
v2.1.5:
v2.1.6:
v2.1.7:
v2.1.9:
v2.2.0:
v2.2.1:
v2.2.2:
v2.2.3:
v2.2.4:
v2.2.5:
v2.2.6:
v2.2.7 & v2.2.8:
git clone 下本项目并且安装完毕 dependence 依赖后,执行如下命令进行单元测试:
npm run test
也可以执行如下命令查看单元测试覆盖率:
npm run cov
如果执行了覆盖率测试,使用浏览器打开 coverage/lcov-report/index.html 文件,则可以看到详细的覆盖率信息。
Copyright (c) 2017 hyj1991
$ claude mcp add easy-monitor \
-- python -m otcore.mcp_server <graph>