feat(sentry): remove sentry integration

This commit is contained in:
Amruth Pillai
2022-12-16 14:34:15 +01:00
parent 9af9a0284e
commit bf41aa9c6c
24 changed files with 1049 additions and 1538 deletions

View File

@ -11,7 +11,6 @@ import { HttpExceptionFilter } from './filters/http-exception.filter';
import { FontsModule } from './fonts/fonts.module';
import { HealthModule } from './health/health.module';
import { IntegrationsModule } from './integrations/integrations.module';
import { SentryInterceptor } from './interceptors/sentry.interceptor';
import { MailModule } from './mail/mail.module';
import { PrinterModule } from './printer/printer.module';
import { ResumeModule } from './resume/resume.module';
@ -41,10 +40,6 @@ import { UsersModule } from './users/users.module';
provide: APP_INTERCEPTOR,
useClass: ClassSerializerInterceptor,
},
{
provide: APP_INTERCEPTOR,
useClass: SentryInterceptor,
},
{
provide: APP_FILTER,
useClass: HttpExceptionFilter,

View File

@ -7,7 +7,6 @@ import authConfig from './auth.config';
import cacheConfig from './cache.config';
import databaseConfig from './database.config';
import googleConfig from './google.config';
import loggingConfig from './logging.config';
import mailConfig from './mail.config';
import storageConfig from './storage.config';
@ -60,24 +59,12 @@ const validationSchema = Joi.object({
PDF_DELETION_TIME: Joi.number()
.default(4 * 24 * 60 * 60 * 1000) // 4 days
.allow(''),
// Logging
SERVER_SENTRY_DSN: Joi.string().allow(''),
});
@Module({
imports: [
NestConfigModule.forRoot({
load: [
appConfig,
authConfig,
cacheConfig,
databaseConfig,
googleConfig,
loggingConfig,
mailConfig,
storageConfig,
],
load: [appConfig, authConfig, cacheConfig, databaseConfig, googleConfig, mailConfig, storageConfig],
validationSchema: validationSchema,
}),
],

View File

@ -1,5 +0,0 @@
import { registerAs } from '@nestjs/config';
export default registerAs('logging', () => ({
sentryDSN: process.env.SERVER_SENTRY_DSN,
}));

View File

@ -1,15 +0,0 @@
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';
import * as Sentry from '@sentry/node';
import { Observable } from 'rxjs';
import { tap } from 'rxjs/operators';
@Injectable()
export class SentryInterceptor implements NestInterceptor {
intercept(_context: ExecutionContext, next: CallHandler): Observable<any> {
return next.handle().pipe(
tap(null, (exception) => {
Sentry.captureException(exception);
})
);
}
}

View File

@ -1,10 +1,7 @@
import '@sentry/tracing';
import { Logger, ValidationPipe } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { NestFactory } from '@nestjs/core';
import { NestExpressApplication } from '@nestjs/platform-express';
import * as Sentry from '@sentry/node';
import cookieParser from 'cookie-parser';
import { AppModule } from './app.module';
@ -21,19 +18,6 @@ const bootstrap = async () => {
// Pipes
app.useGlobalPipes(new ValidationPipe({ transform: true }));
// Sentry Error Logging
const sentryDSN = configService.get<string>('logging.sentryDSN');
const version = configService.get<string>('app.version');
if (sentryDSN) {
Sentry.init({
dsn: sentryDSN,
release: version,
tracesSampleRate: 1.0,
enabled: process.env.NODE_ENV === 'production',
});
}
// Server Port
const port = configService.get<number>('app.port');
await app.listen(port);