This commit is contained in:
LeoMortari
2025-09-15 01:23:47 -03:00
parent 69a2091227
commit bc2eb042cb
3 changed files with 31 additions and 9 deletions

View File

@@ -7,7 +7,7 @@ services:
- '3050:3000'
container_name: clipperia-api
environment:
NODE_ENV: production
NODE_ENV: development
KEYCLOAK_URL: http://keycloak:8080
DATABASE_URL: postgresql://leolitas:L@l321321321@postgres:5432/clipperia?schema=public
networks:

View File

@@ -1,5 +1,6 @@
import { Module, MiddlewareConsumer } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { LoggerModule } from 'nestjs-pino';
import { PrismaModule } from './prisma/prisma.module';
import { AppController } from './app.controller';
import { AppService } from './app.service';
@@ -13,7 +14,20 @@ import { AuthController } from './auth/auth.controller';
@Module({
imports: [
ConfigModule.forRoot(),
ConfigModule.forRoot({
isGlobal: true,
}),
LoggerModule.forRootAsync({
useFactory: () => ({
pinoHttp: {
level: process.env.NODE_ENV === 'production' ? 'info' : 'debug',
transport:
process.env.NODE_ENV !== 'production'
? { target: 'pino-pretty' }
: undefined,
},
}),
}),
PrismaModule,
VideosModule,
AuthModule,

View File

@@ -8,10 +8,18 @@ import { AppModule } from './app.module';
import { Logger as PinoLogger } from 'nestjs-pino';
async function bootstrap() {
const app = await NestFactory.create(AppModule, { bufferLogs: true });
const pinoLogger = app.get(PinoLogger);
app.useLogger(pinoLogger);
const logger = new Logger('Bootstrap');
// Create app with default logger first
const app = await NestFactory.create(AppModule, {
logger: ['error', 'warn', 'log', 'debug', 'verbose'],
});
// Then set up Pino logger
const pinoLogger = app.get(PinoLogger, { strict: false });
if (pinoLogger) {
app.useLogger(pinoLogger);
}
const logger = app.get(Logger);
const reflector = app.get(Reflector);
// Global pipes and interceptors
@@ -48,8 +56,8 @@ async function bootstrap() {
}
}
bootstrap().catch((err) => {
const logger = new Logger('Bootstrap');
logger.error('Failed to start application', err);
bootstrap().catch((error) => {
// Use console.error here since the logger might not be available
console.error('Failed to start application', error);
process.exit(1);
});