Logger
Logger
Nestμλ μΈμ€ν΄μ€ν νλ‘μΈμ€ μ€μ μ¬μ©λλ©° λ°μν μμΈ λ±κ³Ό κ°μ μ¬λ¬ κ°μ§ μν©μμ μ¬μ©λλ λ΄λΆ Logger
μ κΈ°λ³Έ ꡬνμ΄ μ 곡λ©λλ€. κ·Έλ¬λ λλ‘λ λ‘κΉ
μ μμ ν λΉνμ±ννκ±°λ μ¬μ©μ μ§μ ꡬνμ μ 곡νκ³ λ©μμ§λ₯Ό μ§μ μ²λ¦¬ ν μλ μμ΅λλ€. λ‘κ±°λ₯Ό λλ €λ©΄ Nestμ μ΅μ
κ°μ²΄λ₯Ό μ¬μ©ν©λλ€.
const app = await NestFactory.create(ApplicationModule, {
logger: false,
});
await app.listen(3000);
κ·ΈλΌμλ λΆκ΅¬νκ³ μ 체 λ‘κΉ
λ©μ»€λμ¦μ λΉνμ±ν νλ λμ λ€λ₯Έ λ‘κ±°λ₯Ό μ¬μ©νλ κ²μ΄ μ’μ΅λλ€. μ΄λ₯Ό μν΄μλ LoggerService
μΈν°νμ΄μ€λ₯Ό λ§μ‘±μν€λ κ°μ²΄λ₯Ό μ λ¬ν΄μΌ ν©λλ€. μλ₯Ό λ€μ΄ λ΄μ₯ μ½μ
μ΄ λ μ μμ΅λλ€.
const app = await NestFactory.create(ApplicationModule, {
logger: console,
});
await app.listen(3000);
κ·Έλ¬λ μ μ ν μμ΄λμ΄λ μλλλ€. κ·Έλ¬λ μ체 λ‘κ±°λ₯Ό μ½κ² λ§λ€ μ μμ΅λλ€.
import { LoggerService } from '@nestjs/common';
export class MyLogger implements LoggerService {
log(message: string) {}
error(message: string, trace: string) {}
warn(message: string) {}
debug(message: string) {}
verbose(message: string) {}
}
κ·Έλ° λ€μ MyLogger μΈμ€ν΄μ€λ₯Ό μ§μ μ μ© ν μ μμ΅λλ€.
const app = await NestFactory.create(ApplicationModule, {
logger: new MyLogger(),
});
await app.listen(3000);
Extend built-in logger
λ§μ μ μ€ μΌμ΄μ€λ μμ μ λ‘κ±°λ₯Ό μμ±ν΄μΌ ν©λλ€. λ°ν΄λ₯Ό μμ ν μ¬λ°λͺ
ν νμλ μμ΅λλ€. λ΄μ₯Logger
ν΄λμ€λ₯Ό νμ₯νμ¬ κΈ°λ³Έ ꡬνμ λΆλΆμ μΌλ‘ 무μνκ³ super
λ₯Ό μ¬μ©νμ¬ νΈμΆμ λΆλͺ¨ ν΄λμ€μ μμνμμμ€.
import { Logger } from '@nestjs/common';
export class MyLogger extends Logger {
error(message: string, trace: string) {
// add your tailored logic here
super.error(message, trace);
}
}
Dependency injection
λ‘κ±°μμ μμ‘΄μ± μ£Όμ
μ νμ±ννλ €λ©΄ MyLogger ν΄λμ€λ₯Ό μ€μ μ ν리μΌμ΄μ
μ μΌλΆλ‘ λ§λ€μ΄μΌν©λλ€. μλ₯Ό λ€μ΄ LoggerModule
μ λ§λ€ μ μμ΅λλ€.
import { Module } from '@nestjs/common';
import { MyLogger } from './my-logger.service.ts';
@Module({
providers: [MyLogger],
exports: [MyLogger],
})
export class LoggerModule {}
LoggerModuleμ μ΄λμλ κ°μ Έ μ€λ©΄ νλ μ μν¬λ λ‘κ±° μΈμ€ν΄μ€ μμ±μ λ΄λΉν©λλ€. μ΄μ λΆνΈ μ€νΈλ© λ° μ€λ₯ μ²λ¦¬λ₯Ό ν¬ν¨νμ¬ μ 체 μ±μμ λμΌν λ‘κ±° μΈμ€ν΄μ€λ₯Ό μ¬μ©νλ €λ©΄ λ€μ ꡬμ±μ μ¬μ©νμμμ€.
const app = await NestFactory.create(ApplicationModule, {
logger: false,
});
app.useLogger(app.get(MyLogger));
await app.listen(3000);
μ΄ μ루μ μ μ μΌν λ¨μ μ 첫λ²μ§Έ μ΄κΈ°ν λ©μμ§κ° λ‘κ±° μΈμ€ν΄μ€μμ μ²λ¦¬λμ§ μμ§λ§ μ€μ λ‘λ μ€μνμ§ μλ€λ κ²μ λλ€.
Last updated
Was this helpful?