0.1.6 • Published 3 years ago

@prommoto/execution-trace-logger v0.1.6

Weekly downloads
97
License
MIT
Repository
github
Last release
3 years ago
  1. import LoggerModule into app module and provide winston transport instance in LoggerModule configuration using forRootAsync method to add LoggerService into nest IoC system.
import * as CloudWatchTransport from 'winston-cloudwatch';
import { CloudWatchLogs } from 'aws-sdk';
import { LoggerModule } from '../logger';

import { AppController } from './app.controller';
import { AppService } from './app.service';

@Module({
  imports: [
    LoggerModule.forRootAsync({
      inject: [],
      imports: [],
      useFactory: () => {
        return new CloudWatchTransport({
          cloudWatchLogs: new CloudWatchLogs({
            apiVersion: '2014-03-28',
            region: 'aws-region',
            credentials: {
              accessKeyId: 'aws-access-key-id',
              secretAccessKey: 'aws-secret-key-id',
            },
          }),
          logGroupName: 'myLoggerGroup',
          logStreamName: 'myLoggerStream',
        });
      },
    }),
  ],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule {}
  1. connect traceMiddleware to application module for request tracing.
export class AppModule implements NestModule {
  configure(consumer: MiddlewareConsumer) {
    consumer.apply(traceMiddleware).forRoutes('*');
  }
}

use LogFunctionIO decorator on class methods where you want to log function arguments and return values.

import { Controller, Post } from '@nestjs/common';
import { ApiResponse } from '@nestjs/swagger';

import { AppService } from './app.service';

import { LogFunctionIO } from '../logger';
import { CreateResourceDto } from './dto/create-resource.dto';

@Controller()
export class AppController {
  constructor(private readonly appService: AppService) {}

  @LogFunctionIO()
  @Post()
  @ApiResponse({ type: CreateResourceDto })
  public async getHello(): Promise<CreateResourceDto> {
    return new CreateResourceDto();
  }
}
0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago