Skip to main content

Installation

Install

NPM

npm i nestjs-logger-module

Yarn

yarn add nestjs-logger-module

Module configuration options

OptionTypeRequiredDefaultNotes
isGlobalboolean❌ NofalseIf true, registers the module as global (you don't need to re-import it in every module).
providerLoggerProvider✅ YesSelects the underlying provider (CONSOLE, FILE, MONGODB).
enabledboolean❌ NotrueEnables/disables logging globally.
serviceNamestring❌ NoIncluded in log entries where supported. Useful for multi-service environments.
retentionDaysnumber❌ NoIf set to a positive number, old logs are cleaned up once per day (behavior depends on provider).

Provider-specific details:

Module Usage

app.module.ts
import { Module } from '@nestjs/common';
import { LoggerModule, LoggerProvider } from 'nestjs-logger-module';

@Module({
imports: [
LoggerModule.register({
isGlobal: true,
provider: LoggerProvider.CONSOLE,
enabled: true,
serviceName: 'my-service',
retentionDays: 7,
}),
],
})
export class AppModule {}

For async config:

LoggerModule.registerAsync({
isGlobal: true,
provider: LoggerProvider.MONGODB,
imports: [ConfigModule],
inject: [ConfigService],
useFactory: (config: ConfigService) => ({
enabled: true,
serviceName: 'my-service',
retentionDays: 30,
uri: config.get<string>('MONGODB_URI')!,
}),
});