From ab60b8be6597d7f832f73f98dfa64f9f770ed6a4 Mon Sep 17 00:00:00 2001 From: Weiko Date: Mon, 8 Apr 2024 13:23:31 +0200 Subject: [PATCH] [messaging]Add temporary capture to gmail refresh token exceptions (#4875) ## Context This exception is currently caught since this is expected but it seems to be rejected more than it should so we want to have more visibility on it ## Test Screenshot 2024-04-08 at 11 32 28 --- .../repositories/connected-account.repository.ts | 2 +- .../google-api-refresh-access-token.service.ts | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/twenty-server/src/modules/connected-account/repositories/connected-account.repository.ts b/packages/twenty-server/src/modules/connected-account/repositories/connected-account.repository.ts index 268e46cce..f83922571 100644 --- a/packages/twenty-server/src/modules/connected-account/repositories/connected-account.repository.ts +++ b/packages/twenty-server/src/modules/connected-account/repositories/connected-account.repository.ts @@ -144,7 +144,7 @@ export class ConnectedAccountRepository { this.workspaceDataSourceService.getSchemaName(workspaceId); await this.workspaceDataSourceService.executeRawQuery( - `UPDATE ${dataSourceSchema}."connectedAccount" SET "accessToken" = $1 WHERE "id" = $2`, + `UPDATE ${dataSourceSchema}."connectedAccount" SET "accessToken" = $1, "authFailedAt" = NULL WHERE "id" = $2`, [accessToken, connectedAccountId], workspaceId, transactionManager, diff --git a/packages/twenty-server/src/modules/connected-account/services/google-api-refresh-access-token/google-api-refresh-access-token.service.ts b/packages/twenty-server/src/modules/connected-account/services/google-api-refresh-access-token/google-api-refresh-access-token.service.ts index ef1f3bb2f..3b238b89c 100644 --- a/packages/twenty-server/src/modules/connected-account/services/google-api-refresh-access-token/google-api-refresh-access-token.service.ts +++ b/packages/twenty-server/src/modules/connected-account/services/google-api-refresh-access-token/google-api-refresh-access-token.service.ts @@ -3,6 +3,7 @@ import { Injectable } from '@nestjs/common'; import axios from 'axios'; import { EnvironmentService } from 'src/engine/integrations/environment/environment.service'; +import { ExceptionHandlerService } from 'src/engine/integrations/exception-handler/exception-handler.service'; import { InjectObjectMetadataRepository } from 'src/engine/object-metadata-repository/object-metadata-repository.decorator'; import { ConnectedAccountRepository } from 'src/modules/connected-account/repositories/connected-account.repository'; import { ConnectedAccountObjectMetadata } from 'src/modules/connected-account/standard-objects/connected-account.object-metadata'; @@ -13,6 +14,7 @@ export class GoogleAPIRefreshAccessTokenService { private readonly environmentService: EnvironmentService, @InjectObjectMetadataRepository(ConnectedAccountObjectMetadata) private readonly connectedAccountRepository: ConnectedAccountRepository, + private readonly exceptionHandlerService: ExceptionHandlerService, ) {} async refreshAndSaveAccessToken( @@ -80,6 +82,11 @@ export class GoogleAPIRefreshAccessTokenService { connectedAccountId, workspaceId, ); + this.exceptionHandlerService.captureExceptions([error], { + user: { + workspaceId, + }, + }); throw new Error(`Error refreshing access token: ${error.message}`); } }