我正在开发一个使用
whatsapp-web.js
库的 NestJS 项目。运行几天后,我的应用程序崩溃了,我的控制器停止接受任何请求。此外,我的 cron 作业停止工作。日志中一切看起来都很正常,并且没有明确的错误消息。不过,重新启动应用程序可以暂时解决该问题。
这是我的 main.ts
文件:
import { ValidationPipe, VersioningType } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';
import { json, urlencoded } from 'express';
import { AppModule } from './app.module';
import { API_KEY_TOKEN_HEADER, VALIDATION_PIPE_OPTIONS } from './shared/constants/common';
import { WhatsAppClientsManager } from './whatsapp/whatsapp-manager/whatsapp-clients-manager';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.enableVersioning({
type: VersioningType.URI,
});
app.useGlobalPipes(new ValidationPipe(VALIDATION_PIPE_OPTIONS));
app.use(json({ limit: process.env.REQUEST_SIZE_LIMIT }));
app.use(urlencoded({ extended: true, limit: process.env.REQUEST_SIZE_LIMIT }));
app.enableCors();
const config = new DocumentBuilder()
.setTitle('WhatsApp Api')
.setDescription('WhatsApp Api description')
.setVersion('1.0')
.addApiKey({
name: API_KEY_TOKEN_HEADER,
type: 'apiKey',
in: "header"
}, API_KEY_TOKEN_HEADER)
.build();
const document = SwaggerModule.createDocument(app, config);
SwaggerModule.setup('swagger', app, document);
app.enableCors();
await app.listen(process.env.PORT || 3000);
}
process.on('uncaughtException', (err) => {
console.error('uncaughtException:', err);
});
process.on('unhandledRejection', (reason, promise) => {
console.error('Unhandled Rejection at:', promise, 'reason:', reason);
});
bootstrap();
其他详细信息:
NestJS version: v10.3.10
whatsapp-web.js version: v1.23.1-alpha.5
Node.js version: v21.7.2
什么可能导致我的应用程序在运行几天后崩溃? 任何见解或建议将不胜感激!
从您提供的代码来看,我还没有发现任何问题。 我可以知道你如何运行你的应用程序吗?你能检查你的服务器CPU/内存使用情况吗?您的应用程序是否连接到任何第三方资源?