From 44b6e40de0f74790df353eb153f4840f368a009d Mon Sep 17 00:00:00 2001 From: kipsang Date: Thu, 8 Jan 2026 08:18:19 +0300 Subject: [PATCH] feat: implement APM error capturing in login process. --- apps/backend/src/api/routes/auth.controller.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/apps/backend/src/api/routes/auth.controller.ts b/apps/backend/src/api/routes/auth.controller.ts index abe0e38a77..e8c9b6e024 100644 --- a/apps/backend/src/api/routes/auth.controller.ts +++ b/apps/backend/src/api/routes/auth.controller.ts @@ -386,6 +386,24 @@ export class AuthController { response.header('reload', 'true'); return response.status(200).json({ login: true }); } catch (e: any) { + try { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const apm = require('../../apm.init'); + apm?.captureError?.(e instanceof Error ? e : new Error(String(e)), { + handled: true, + custom: { + provider, + providerUpper: typeof provider === 'string' ? provider.toUpperCase() : provider, + redirect, + ip, + userAgent, + hasToken: !!token, + }, + }); + } catch { + // Ignore APM/reporting failures; preserve redirect behavior. + } + if (redirect) { const url = new URL(redirect, process.env.FRONTEND_URL || undefined); url.searchParams.set('sso', 'failed');