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 des node-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 Schnittstellen cpu
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 Drittanbieterpaket nest-status-monitor
von Nest
, 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 Paket socket
. Die Version des Statusüberwachungspakets ist nicht mit dem neuesten Paket socket
, also der alten Version, kompatibel ist installiert
yarn run start:dev
🎜🎜🎜🎜Geben Sie im Browser ein http://localhost:3000/api/status Dies 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 zwei 400
-Anfragen und eine 200
-Anfrage gesendet, die deutlich unter angezeigt werden das Ende darunter. 🎜🎜🎜🎜Zusammenfassung🎜🎜🎜Bisher 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!