From ed76417ba361b06108d52cb400f54eb883de3770 Mon Sep 17 00:00:00 2001 From: X1a0t <405028157@qq.com> Date: Mon, 4 Sep 2023 15:42:55 +0800 Subject: [PATCH] feat: log all exceptions In HTTP context (#4149) --- apps/server/src/middleware/exception-logger.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/server/src/middleware/exception-logger.ts b/apps/server/src/middleware/exception-logger.ts index 79497acfd..cec7eaecc 100644 --- a/apps/server/src/middleware/exception-logger.ts +++ b/apps/server/src/middleware/exception-logger.ts @@ -9,11 +9,12 @@ import { Request, Response } from 'express'; import { REQUEST_ID } from '../constants'; -@Catch(HttpException) +@Catch() export class ExceptionLogger implements ExceptionFilter { private logger = new Logger('ExceptionLogger'); catch(exception: Error, host: ArgumentsHost) { + // with useGlobalFilters, the context is always HTTP const ctx = host.switchToHttp(); const request = ctx.getRequest(); const requestId = request?.header(REQUEST_ID); @@ -27,11 +28,11 @@ export class ExceptionLogger implements ExceptionFilter { const response = ctx.getResponse(); if (exception instanceof HttpException) { - response.json(exception.getResponse()); + response.status(exception.getStatus()).json(exception.getResponse()); } else { response.status(500).json({ - message: exception.message, statusCode: 500, + error: exception.message, }); } }