Wie verwende ich Nest.js, um die Anforderungsüberwachung im Knoten zu implementieren? Der folgende Artikel stellt Ihnen vor, wie Sie eine einfache Version der Anforderungsüberwachung mithilfe desnode-Frameworks Nest.js implementieren. Ich hoffe, er wird Ihnen hilfreich sein!
Wenn wir normalerweise Geschäftsabwicklungen durchführen, möchten wir die Live-Geschäftsanfragen zu einem bestimmten Zeitpunkt sehen und die Nutzung bestimmter Schnittstellencpu
memory
überprüfen Bei der Optimierung der Schnittstelle sollte ein Monitoringsystem aufgebaut werden. Aber wie sollte man es umsetzen, wenn man selbst ein kleines Projekt startet und nicht über so viele Ressourcen verfügt? Hier verwenden wir das Drittanbieterpaketnest-status-monitor
vonNest
, um einen Blick darauf zu werfen.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这个是设置的显示地址。大家也可以根据自己需求环境去设置
如上图所示,我刚才测试发了两个400
的请求 与一个200
Dokumentation des Statusüberwachungspaketsnest-status-monitor:
https ://www.npmjs.com/package/nest-status-monitor
-Installation Die erforderlichen Abhängigkeiten im Nest-Projekt 6.10.14
erfordern das Paketsocket
. Die Version des Statusüberwachungspakets ist nicht mit dem neuesten Paketsocket
, also der alten Version, kompatibel ist installiertyarn run start:dev
Geben Sie im Browser einhttp://localhost:3000/api/statusDies ist die Einstellungsanzeigeadresse. Sie können es auch entsprechend Ihren eigenen Bedürfnissen und Ihrer Umgebung einstellen. alt=" Lassen Sie uns darüber sprechen, wie Sie Nest.js verwenden, um eine einfache Anforderungsüberwachung im Knoten zu implementieren"/>Wie im Bild oben gezeigt, habe ich gerade zwei400
-Anfragen und eine200
-Anfrage gesendet, die deutlich unter angezeigt werden das Ende darunter. ZusammenfassungBisher haben wir ein kleines Tool gebaut, das ohne hohe Entwicklungskosten Serverzustände in Echtzeit überwachen kann. Jeder, der die Gadgets kennt, die Nests Open Source unterstützen, kann im Kommentarbereich kommunizieren. Voneinander lernen~( ̄▽ ̄)~*Für mehr Node-bezogenes Wissen besuchen Sie bitte: nodejs-Tutorial!Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie Nest.js verwenden, um eine einfache Anforderungsüberwachung im Knoten zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!