diff --git a/apps/backend/src/main.ts b/apps/backend/src/main.ts index 3b2bd47e..ea65d1da 100644 --- a/apps/backend/src/main.ts +++ b/apps/backend/src/main.ts @@ -11,7 +11,7 @@ import { HttpExceptionFilter } from '@gitroom/nestjs-libraries/services/exceptio import { ConfigurationChecker } from '@gitroom/helpers/configuration/configuration.checker'; import { initializeSentry } from '@gitroom/nestjs-libraries/sentry/initialize.sentry'; -initializeSentry(); +initializeSentry('backend'); async function bootstrap() { const app = await NestFactory.create(AppModule, { diff --git a/apps/cron/src/main.ts b/apps/cron/src/main.ts index e9928ee1..551f5258 100644 --- a/apps/cron/src/main.ts +++ b/apps/cron/src/main.ts @@ -2,7 +2,7 @@ import { NestFactory } from '@nestjs/core'; import { CronModule } from './cron.module'; import { initializeSentry } from '@gitroom/nestjs-libraries/sentry/initialize.sentry'; -initializeSentry(); +initializeSentry('cron'); async function bootstrap() { // some comment again diff --git a/apps/workers/src/main.ts b/apps/workers/src/main.ts index f43c6f31..aeb34950 100644 --- a/apps/workers/src/main.ts +++ b/apps/workers/src/main.ts @@ -5,7 +5,7 @@ import { MicroserviceOptions } from '@nestjs/microservices'; import { BullMqServer } from '@gitroom/nestjs-libraries/bull-mq-transport-new/strategy'; import { initializeSentry } from '@gitroom/nestjs-libraries/sentry/initialize.sentry'; -initializeSentry(); +initializeSentry('workers'); async function bootstrap() { process.env.IS_WORKER = 'true'; diff --git a/libraries/nestjs-libraries/src/sentry/initialize.sentry.ts b/libraries/nestjs-libraries/src/sentry/initialize.sentry.ts index 382ae887..0c5e7ffd 100644 --- a/libraries/nestjs-libraries/src/sentry/initialize.sentry.ts +++ b/libraries/nestjs-libraries/src/sentry/initialize.sentry.ts @@ -1,21 +1,33 @@ import * as Sentry from '@sentry/nestjs'; -import { nodeProfilingIntegration } from "@sentry/profiling-node"; +import { nodeProfilingIntegration } from '@sentry/profiling-node'; +import { capitalize } from 'lodash'; -export const initializeSentry = () => { +export const initializeSentry = (appName: string) => { if (!process.env.NEXT_PUBLIC_SENTRY_DSN) { return null; } - console.log('loading sentry'); - Sentry.init({ - dsn: process.env.NEXT_PUBLIC_SENTRY_DSN, - integrations: [ - // Add our Profiling integration - nodeProfilingIntegration(), - ], - tracesSampleRate: process.env.NODE_ENV === 'development' ? 1.0 : 0.3, - profilesSampleRate: process.env.NODE_ENV === 'development' ? 1.0 : 0.1, - }); - + try { + Sentry.init({ + initialScope: { + tags: { + service: appName, + component: 'nestjs', + }, + contexts: { + app: { + name: `Postiz ${capitalize(appName)}`, + }, + }, + }, + dsn: process.env.NEXT_PUBLIC_SENTRY_DSN, + integrations: [ + // Add our Profiling integration + nodeProfilingIntegration(), + ], + tracesSampleRate: process.env.NODE_ENV === 'development' ? 1.0 : 0.3, + profilesSampleRate: process.env.NODE_ENV === 'development' ? 1.0 : 0.1, + }); + } catch (err) {} return true; };