工具:
调试:node-inspector
监控:node-monitor & node-dashboard
调试:
1.安装node-inspector
$ npm install -g node-inspector
2.运行开发的node程序
$node --debug app.js
3.运行node-inspector
$node-inspector
4.复制第3步输出的URL到chrome浏览器中就可以开始调试了
相关链接:http://jingyan.baidu.com/article/dca1fa6fbd580ff1a44052de.html
监控:
1.安装monitor
$npm install monitor
2.安装monitor-dashboard
$npm install monitor-dashboard
3.运行monitor-dashboard
$npm start monitor-dashboard
然后在浏览器中输入:localhost:4200就可以看见最原始的界面
我们可以在地址栏直接输入地址创建自己的监控页面,比如:localhost:4200/getttingstart/page1,这时会提示我们创建自己的页面
点击Create Page创建自己的页面,会弹出选择监控控件:
这里我们先选择一个监控cpu和内存的控件AppViewer,选择后界面如下:
我们再添加一个变量对象监控的控件,在右上角点击menu选择 add a component,界面如下:
现在我们单击Object Inspector的标题看看此时的界面和值:
这里我们可以看到server只有一个选项,expression(表达式)为空
4.向应用程序添加监测点
var express = require("express"); var app = express(); var path = require("path"); app.use(require('body-parser').urlencoded({extended: true, limit:'5mb'})); app.use(express.static(path.join(__dirname, '/'))); myobj = {visited:0, voted:0} app.post("/", function(req, res){ console.log(req.body); myobj.visited++; res.end("hello"); }); app.listen(8000, function(){ console.log("listen on port:8000"); }); var Monitor = require('monitor'); var options = { hostName: 'localhost', probeClass: 'Inspect', initParams: { pollInterval: 1000, key:myobj } } var processMonitor = new Monitor(options); // Attach the change listener // processMonitor.on('change', function() { // console.log("changed: "+processMonitor.get("value").visited); // }); // Now connect the monitor processMonitor.connect(function(error) { if (error) { console.error('Error connecting with the process probe: ', error); process.exit(1); } });
5.启动应用程序
$node app.js
6.再次点击ObjectInspector选择server和添加expression
点击save我们就可以对myobj进行监控了:
参考资料:https://github.com/lorenwest/node-monitor
相关推荐
本指南涵盖了 Node.js 调试的多个方面,包括性能优化、内存分析、错误处理、日志记录、监控等。 CPU 篇 CPU 篇主要介绍了 Node.js 中的性能优化技术,包括使用 perf 工具、FlameGraph 和 v8-profiler 等来分析和...
**Node.js-Memeye:轻量级的NodeJS进程监控工具** Node.js作为一个强大的服务器端JavaScript运行环境,广泛用于构建高性能的网络应用。然而,随着应用程序的复杂度增加,资源管理变得至关重要,尤其是内存管理。...
这种实时性对于调试和性能优化来说至关重要。 4. **丰富的数据统计**:工具不仅提供基本的性能数据,还可能包括如垃圾回收、线程池状态等高级信息。这些统计可以帮助开发者全面理解应用的运行状态,并据此作出优化...
在"Node.js-基于pm2的nodejs监控工具"中,我们可以实现对Node.js应用的详细监控。这包括但不限于: 1. **性能监控**: 监控CPU、内存使用情况,以及网络I/O等关键指标。 2. **错误日志追踪**: 及时发现并定位应用...
7. **日志记录**: 可能还涉及到了日志记录,以便调试和监控应用状态。 总的来说,"nodejs-demo2" 是一个适合初学者的 Node.js 入门示例,通过它,你可以学习到 Node.js 的基本概念和常用操作,为进一步深入学习和...
7. **性能优化**:探讨Node.js应用的性能监控、调试技巧,以及如何进行性能优化。 8. **测试与部署**:介绍Mocha、Jest等测试框架,以及如何配置持续集成和自动化部署。 9. **源码分析**:书中可能包含部分Node.js...
NodeJS实战:深入理解与应用 Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它以其事件驱动、非阻塞I/O模型而闻名,尤其适合用于构建高效、可伸缩的网络应用程序。本实战指南旨在帮助开发者从零基础开始,...
同时,配置适当的日志系统(如`winston`)以便于调试和问题排查。 综上所述,基于Node.js开发的树莓派资源监控系统,能够帮助我们实时了解设备的运行状态,及时发现潜在问题,保障系统的稳定运行。通过不断优化和...
3. Debugger:Node.js内置调试器或使用VS Code等IDE的调试功能,便于查找和修复代码问题。 4. Mocha & Chai:单元测试框架,确保代码质量。 六、Node.js应用场景 1. Web服务器:构建高性能的实时Web应用,如聊天室...
- 调试技巧:使用`debugger`语句、Visual Studio Code等工具进行调试。 - 单元测试:使用Mocha、Jest等框架编写单元测试,确保代码质量。 - 集成测试:模拟真实环境进行测试,如使用Supertest。 7. **部署与运维...
6. **进阶话题**:涵盖如npm(Node Package Manager)、调试、测试、性能监控等高级主题,有助于提升开发效率和项目质量。 其次,`docs.CHM`是一个 Compiled HTML Help 文件,它是微软的一种帮助文件格式,将HTML...
六、性能监控与调试 Node.js 提供了内置的 `process` 对象,可以用来获取当前进程的信息,如内存使用情况、CPU占用率等。此外,还可以使用第三方工具如 `pm2` 进行进程管理和负载均衡,以及 `debug` 模块进行调试。...
通过学习和调试这个项目,你可以深入理解WebRTC的信令流程、媒体流处理和多人视频会议的实现细节。同时,这也是一个很好的起点,可以根据需要扩展功能,如增加屏幕共享、音频处理、服务质量监控等。
- **监控与调试**:定期检查缓存性能,通过日志或工具分析缓存命中率,以优化缓存效果。 总的来说,Node.js 的缓存机制是其高效运行的重要保障,合理利用缓存可以显著提升应用性能,降低资源消耗。理解并掌握这些...
3. nodemon:实时监控文件变化并自动重启服务,方便开发过程中的热更新。 总结,Node.js 教程(alsotang)将带你从零开始,通过实例讲解 Node.js 的基本概念和核心功能,包括文件系统操作、HTTP 服务器创建、模块...
9. **调试与测试**:学习如何使用内置的`debugger`工具,以及第三方工具如`Mocha`、`Chai`进行单元测试和集成测试,是提高代码质量的关键。 10. **部署与持续集成**:文档可能还会涉及如何将Node.js应用部署到...
这对于快速原型开发和调试非常有用。 3. **文档编辑器**:adminMongo提供了JSON格式的文档编辑器,让你能够直接在界面上编辑和保存单个文档,支持多种数据类型,包括字符串、数字、数组、对象等。 4. **查询构建器...
`supervisor` 能够监控项目文件的变化,并在检测到变化时自动重启应用,避免手动重启的繁琐。安装 `supervisor` 后,指定项目主文件(如 Express 项目的 `bin/www`),即可启用自动重启功能。 总之,NodeJS 结合 ...
- **监控与日志**:建立完善的监控体系和日志记录机制,及时发现并解决问题。 以上就是Node.js实战第二季的相关知识点概述,希望能对学习Node.js的朋友们有所帮助。在实际开发过程中,还需要不断积累经验、优化代码...