From 82f374d84c3a43c690f87e12bf7261fad3c7540f Mon Sep 17 00:00:00 2001 From: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> Date: Wed, 2 Apr 2025 14:56:26 +0300 Subject: [PATCH] chore: set x-request-id in response header for exeptions apiv2 (#20505) --- apps/api/v2/src/filters/calendar-service-exception.filter.ts | 3 ++- apps/api/v2/src/filters/http-exception.filter.ts | 4 ++-- apps/api/v2/src/filters/prisma-exception.filter.ts | 3 ++- apps/api/v2/src/filters/trpc-exception.filter.ts | 3 ++- apps/api/v2/src/filters/zod-exception.filter.ts | 3 ++- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/apps/api/v2/src/filters/calendar-service-exception.filter.ts b/apps/api/v2/src/filters/calendar-service-exception.filter.ts index a4915f8b48..05868c0575 100644 --- a/apps/api/v2/src/filters/calendar-service-exception.filter.ts +++ b/apps/api/v2/src/filters/calendar-service-exception.filter.ts @@ -36,7 +36,8 @@ export class CalendarServiceExceptionFilter implements ExceptionFilter { const response = ctx.getResponse(); const request = ctx.getRequest(); - const requestId = request.headers["X-Request-Id"]; + const requestId = request.headers["X-Request-Id"] ?? "unknown-request-id"; + response.setHeader("X-Request-Id", requestId.toString()); this.logger.error(`Calendar Service Exception Filter: ${exception?.message}`, { exception, diff --git a/apps/api/v2/src/filters/http-exception.filter.ts b/apps/api/v2/src/filters/http-exception.filter.ts index afa3b390d5..904942b9f2 100644 --- a/apps/api/v2/src/filters/http-exception.filter.ts +++ b/apps/api/v2/src/filters/http-exception.filter.ts @@ -14,8 +14,8 @@ export class HttpExceptionFilter implements ExceptionFilter { const response = ctx.getResponse(); const request = ctx.getRequest(); const statusCode = exception.getStatus(); - const requestId = request.headers["X-Request-Id"]; - + const requestId = request.headers["X-Request-Id"] ?? "unknown-request-id"; + response.setHeader("X-Request-Id", requestId.toString()); this.logger.error(`Http Exception Filter: ${exception?.message}`, { exception, body: request.body, diff --git a/apps/api/v2/src/filters/prisma-exception.filter.ts b/apps/api/v2/src/filters/prisma-exception.filter.ts index 4b7b86e433..86bec00a98 100644 --- a/apps/api/v2/src/filters/prisma-exception.filter.ts +++ b/apps/api/v2/src/filters/prisma-exception.filter.ts @@ -40,7 +40,8 @@ export class PrismaExceptionFilter implements ExceptionFilter { const ctx = host.switchToHttp(); const response = ctx.getResponse(); const request = ctx.getRequest(); - const requestId = request.headers["X-Request-Id"]; + const requestId = request.headers["X-Request-Id"] ?? "unknown-request-id"; + response.setHeader("X-Request-Id", requestId.toString()); this.logger.error(`PrismaError: ${error.message}`, { error, diff --git a/apps/api/v2/src/filters/trpc-exception.filter.ts b/apps/api/v2/src/filters/trpc-exception.filter.ts index 958bee32ee..2d7c13264a 100644 --- a/apps/api/v2/src/filters/trpc-exception.filter.ts +++ b/apps/api/v2/src/filters/trpc-exception.filter.ts @@ -87,7 +87,8 @@ export class TRPCExceptionFilter implements ExceptionFilter { break; } - const requestId = request.headers["X-Request-Id"]; + const requestId = request.headers["X-Request-Id"] ?? "unknown-request-id"; + response.setHeader("X-Request-Id", requestId.toString()); this.logger.error(`TRPC Exception Filter: ${exception?.message}`, { exception, diff --git a/apps/api/v2/src/filters/zod-exception.filter.ts b/apps/api/v2/src/filters/zod-exception.filter.ts index 37d4495aac..3a8bb41771 100644 --- a/apps/api/v2/src/filters/zod-exception.filter.ts +++ b/apps/api/v2/src/filters/zod-exception.filter.ts @@ -15,7 +15,8 @@ export class ZodExceptionFilter implements ExceptionFilter { const ctx = host.switchToHttp(); const response = ctx.getResponse(); const request = ctx.getRequest(); - const requestId = request.headers["X-Request-Id"]; + const requestId = request.headers["X-Request-Id"] ?? "unknown-request-id"; + response.setHeader("X-Request-Id", requestId.toString()); this.logger.error(`ZodError: ${error.message}`, { error,