@scrimmage/loki-logger
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

Nest Js Grafana loki logger.

A Nest Js module to push logs to grafana loki extending the built-in nest js Logger Class.

Quick start

Import LokiLoggerModule into the root AppModule and use the forRoot() method to configure it.

import { LokiLoggerModule } from 'nestjs-loki-logger';

@Module({
  imports: [
    LokiLoggerModule.forRoot({
      lokiUrl: 'http://localhost:3100',   // loki server
      labels: {
        'label': 'testing',     // app level labels, these labels will be attached to every log in the application
      },
      logToConsole: false,
      gzip: false // contentEncoding support gzip or not
    }),
  ],
})
export class AppModule {}

Using the logger

import { Controller, Get } from '@nestjs/common';
import { LokiLogger } from 'nestjs-loki-logger';

private readonly lokiLogger = new LokiLogger(AppController.name);

@Controller()
export class AppController {
  constructor() {}

  private readonly lokiLogger = new LokiLogger(AppController.name);   // adds context label

  @Get()
  getHello(): string {
  
    this.lokiLogger.debug('this is how we rock');
    this.lokiLogger.debug('this is how we rock', undefined, {
      label: 'testing', // you can set specifc labels to the log
    });
    return 'hello';
  }
}

Package Sidebar

Install

npm i @scrimmage/loki-logger

Weekly Downloads

2

Version

0.1.0

License

ISC

Unpacked Size

107 kB

Total Files

26

Last publish

Collaborators

  • vpolishchuk
  • s.konovalenko
  • yevgenius