nestjs-winston-module
TypeScript icon, indicating that this package has built-in type declarations

2.0.2 • Public • Published

nestjs-winston

yes, another winston based logger for NestJS

Overview

This is a Winston based Logger module made for NestJS apps, it has support for a Logging context and it can replace the default NestJS logger implementation.

Installation

Execute this command in your project folder:

npm install nestjs-winston-module
# or if using yarn
yarn add nestjs-winston-module

How to enable

Import LoggerModule into your AppModule

Logger Module is a global module so there's no need to import it on every module of your app, just import it once on AppModule and it'll be available to use everywhere.

Example

import { LoggerModule } from 'nestjs-winston-module';

@Module({
  imports: [
    /** Module declaration  */
    LoggerModule.forRoot({
      level: 'info',
      silent: false,
    }),
    // ... your other module imports
  ],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule implements NestModule {}

Then use the Logger Injector in any of your project classes

import { InjectLogger, WinstonLogger } from 'nestjs-winston-module';

class UserService {
  constructor(@InjectLogger(UserService.name) private readonly logger: WinstonLogger) {
    this.logger.info('Hello world');
  }
}

If you wish to override the default NestJS logger module you can do this by creating an instance of NestLogger and replacing the default logger in the bootstrap method of NestJS

import { NestLogger } from 'nestjs-winston-module';

export class App {
  /**
   * Boostrap Nest server
   */
  public async bootstrap(): Promise<INestApplication> {
    /** create App */
    const app = await NestFactory.create(AppModule, {
      logger: new NestLogger(),
    });
  }
}

More options will come soon like ability to change the log format and add/replace transports

Readme

Keywords

none

Package Sidebar

Install

npm i nestjs-winston-module

Weekly Downloads

8

Version

2.0.2

License

MIT

Unpacked Size

378 kB

Total Files

35

Last publish

Collaborators

  • mrarc