Lassen Sie uns darüber sprechen, wie Sie Nest.js verwenden, um eine einfache Anforderungsüberwachung im Knoten zu implementieren

青灯夜游
Freigeben: 2022-03-04 11:06:44
nach vorne
2151 Leute haben es durchsucht

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!

Lassen Sie uns darüber sprechen, wie Sie Nest.js verwenden, um eine einfache Anforderungsüberwachung im Knoten zu implementieren

Wenn wir normalerweise Geschäftsabwicklungen durchführen, möchten wir die Live-Geschäftsanfragen zu einem bestimmten Zeitpunkt sehen und die Nutzung bestimmter Schnittstellencpumemoryü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-monitorvonNest, 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: [], };
    Nach dem Login kopieren
  • mian.ts 文件中引用,并注册

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

效果

  • 启动项目yarn run start:dev

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

    Lassen Sie uns darüber sprechen, wie Sie Nest.js verwenden, um eine einfache Anforderungsüberwachung im Knoten zu implementieren

  • 如上图所示,我刚才测试发了两个400的请求 与一个200

    Postnodejs
  • Framework--Nest.js Chinesisches Dokument der Einfachheit halber Lassen Sie uns Erfahren Sie mehr über Nest Chinese-Dokumentation (https://docs.nestjs.cn/)

Dokumentation des Statusüberwachungspaketsnest-status-monitor:

    https ://www.npmjs.com/package/nest-status-monitor

Abhängigkeiten installieren

  • Zuerst in unserer-Installation Die erforderlichen Abhängigkeiten im Nest-Projekt 6.10.14erfordern das Paketsocket. Die Version des Statusüberwachungspakets ist nicht mit dem neuesten Paketsocket, also der alten Version, kompatibel ist installiert

    Realisieren Sie die Statusüberwachungskonfiguration rrreeemian.ts-Datei und registrieren Sie rrreee

    EffektStarten Sie das Projektyarn run start:devGeben 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!

  • Verwandte Etiketten:
    Quelle:juejin.cn
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!