聊聊node中怎么使用Nest.js 实现简易版请求监控

node中怎么使用nest.js 实现请求监控?下面本篇文章给大家介绍一下node 框架 nest.js 实现简易版请求监控的方法,希望对大家有所帮助!

聊聊node中怎么使用Nest.js 实现简易版请求监控

平时我们做业务处理时,想看一个时间端的业务请求实况,看下某些接口 cpu 内存 等 使用情况,做出针对性的接口优化时要做一个监控系统。但是如果是自己搞一个小项目没有那么多资源应该如何实现呢。这里我们采用 Nest 的一个第三方包 nest-status-monitor 来看一下。

贴出 nodejs框架–Nest.js 中文文档以方便大家进一步学习 Nest 中文文档(https://docs.nestjs.cn/)

状态监控包文档 nest-status-monitor:https://www.npmjs.com/package/nest-status-monitor

安装依赖

首先在我们的 Nest 项目中安装一下需要的依赖

yarn add nest-status-monitor  状态监控包

yarn add @nestjs/platform-socket.io 6.10.14  需要用到的 socket 包 ,这里因为状态监控包由于版本和最新的 socket 包不兼容,故安装老的版本

实现

状态监控配置

/* statusMonitor.ts */export default {  pageTitle: 'Nest.js Monitoring ',  // 配置端口  port: 3000,  // 这里记得加全局路由 '/api'  path: '/status',  ignoreStartsWith: '/health/alive',  spans: [    {      interval: 1, // Every second      retention: 60, // Keep 60 datapoints in memory    },    {      interval: 5, // Every 5 seconds      retention: 60,    },    {      interval: 15, // Every 15 seconds      retention: 60,    },  ],  chartVisibility: {    cpu: true,    mem: true,    load: true,    responseTime: true,    rps: true,    statusCodes: true,  },  healthChecks: [],};

登录后复制

mian.ts 文件中引用,并注册

  /* main.ts */import { StatusMonitorModule } from 'nest-status-monitor';import statusMonitorConfig from './config/statusMonitor';async function bootstrap() { ... // 注册状态监控  StatusMonitorModule.setUp(statusMonitorConfig),}bootstrap();

登录后复制

效果

启动项目yarn run start:dev

在浏览器中输入 http://localhost:3000/api/status 这个是设置的显示地址。大家也可以根据自己需求环境去设置

1.png

如上图所示,我刚才测试发了两个 400 的请求 与一个 200 的请求,清晰的展示在最下面。

总结

至此我们在开发成本不高的情况下已经弄好了一个小工具,可实时监控服务器情况。大家知道那些支持 Nest 开源的小工具,可以在评论区进行交流。互相学习~( ̄▽ ̄)~*

更多node相关知识,请访问:nodejs 教程!

以上就是聊聊node中怎么使用Nest.js 实现简易版请求监控的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2702442.html

(0)
上一篇 2025年3月7日 19:24:13
下一篇 2025年2月26日 19:23:50

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论