From 909b375c93372e10ed077fd00e5f829b86491edd Mon Sep 17 00:00:00 2001 From: Sergey Krylov Date: Tue, 10 Jun 2025 05:22:59 +0300 Subject: [PATCH] add logger --- .../middlewares/logger/logger.middleware.ts | 19 +++++++++++++++++++ src/main.ts | 2 ++ 2 files changed, 21 insertions(+) create mode 100644 src/common/middlewares/logger/logger.middleware.ts diff --git a/src/common/middlewares/logger/logger.middleware.ts b/src/common/middlewares/logger/logger.middleware.ts new file mode 100644 index 0000000..ee993d3 --- /dev/null +++ b/src/common/middlewares/logger/logger.middleware.ts @@ -0,0 +1,19 @@ +import { Injectable, NestMiddleware } from '@nestjs/common'; +import type { NextFunction, Request, Response } from 'express'; + +@Injectable() +export class LoggerMiddleware implements NestMiddleware { + use(req: Request, res: Response, next: NextFunction) { + console.log(`Request ${req.method} ${req.baseUrl}`); + next(); + } +} + +export function loggerMiddlewareFunc( + req: Request, + res: Response, + next: NextFunction, +) { + console.log(`[${req.method}]: ${req.originalUrl}`); + next(); +} diff --git a/src/main.ts b/src/main.ts index 9be6371..4d40be5 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,10 +1,12 @@ import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import { ValidationPipe } from '@nestjs/common'; +import { loggerMiddlewareFunc } from './common/middlewares/logger/logger.middleware'; async function bootstrap() { const app = await NestFactory.create(AppModule); app.useGlobalPipes(new ValidationPipe()); + app.use(loggerMiddlewareFunc); await app.listen(process.env.PORT ?? 3000); } bootstrap();