This NestJS app uses Pino for logging. When you call the root URL, it logs an info message and returns 'Hello World!'.
import { Module, Injectable } from '@nestjs/common';
import { LoggerModule } from 'nestjs-pino';
import { Controller, Get } from '@nestjs/common';
import { Logger as PinoLogger } from 'nestjs-pino';
@Injectable()
class AppService {
constructor(private readonly logger: PinoLogger) {}
getHello(): string {
this.logger.info('Hello endpoint was called');
return 'Hello World!';
}
}
@Controller()
class AppController {
constructor(private readonly appService: AppService) {}
@Get()
getHello(): string {
return this.appService.getHello();
}
}
@Module({
imports: [
LoggerModule.forRoot({
pinoHttp: {
level: 'info',
prettyPrint: true
},
}),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}