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

 3242

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


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


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

贴出 node.js框架--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 包不兼容,故安装老的版本

实现

状态监控配置

  1. /* statusMonitor.ts */
  2.  
  3. export default {
  4.   pageTitle: 'Nest.js Monitoring ',
  5.   // 配置端口
  6.   port: 3000,
  7.   // 这里记得加全局路由 '/api'
  8.   path: '/status',
  9.   ignoreStartsWith: '/health/alive',
  10.   spans: [
  11.     {
  12.       interval: 1, // Every second
  13.       retention: 60, // Keep 60 datapoints in memory
  14.     },
  15.     {
  16.       interval: 5, // Every 5 seconds
  17.       retention: 60,
  18.     },
  19.     {
  20.       interval: 15, // Every 15 seconds
  21.       retention: 60,
  22.     },
  23.   ],
  24.   chartVisibility: {
  25.     cpu: true,
  26.     mem: true,
  27.     load: true,
  28.     responseTime: true,
  29.     rps: true,
  30.     statusCodes: true,
  31.   },
  32.   healthChecks: [],
  33. };

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

  1. /* main.ts */
  2. import { StatusMonitorModule } from 'nest-status-monitor';
  3. import statusMonitorConfig from './config/statusMonitor';
  4. async function bootstrap() {
  5.  ...
  6.  // 注册状态监控
  7.   StatusMonitorModule.setUp(statusMonitorConfig),
  8. }
  9. bootstrap();


效果

启动项目yarn run start:dev

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


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

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

总结

至此我们在开发成本不高的情况下已经弄好了一个小工具,可实时监控服务器情况。

大家知道那些支持 Nest 开源的小工具,可以在评论区进行交流。互相学习~( ̄▽ ̄)~*


本文网址:https://www.zztuku.com/detail-11168.html
站长图库 - 聊聊node中怎么使用Nest.js 实现简易版请求监控
申明:本文转载于《掘金社区》,如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐