0.0.2 • Published 3 years ago

@twaice/nestjs-kinesis-producer v0.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

NestJS Kinesis Producer

Description

Kinesis Producer library for NestJS based on Node-Kinesis-Producer.

Installation

$ npm install @twaice/nestjs-kinesis-producer

Usage

  1. Register Module KinesisProducerModule.register for synchronous configuration or KinesisProducerModule.registerAsync Asynchronous configuration.
import { HttpModule } from '@nestjs/common';
import { KinesisProducerModule } from '@twaice/nestjs-kinesis-producer';

@Module({
  imports: [
    KinesisProducerModule.registerAsync({
      useFactory: (configService: ConfigService) => {
        return {
          streamName: configService.get<string>('streamName')
        };
      },
      inject: [ConfigService],
    }),
  ],
  controllers: [SampleController],
  providers: [SampleService],
  exports: [SampleService],
})
export class SampleModule {}
  1. Use module in your service
import { KinesisProducerService } from '@twaice/nestjs-kinesis-producer';

@Injectable()
export class KinesisAggregatorPublisher {
  constructor(private readonly kinesisPublisher: KinesisProducerService) {
  }
  
  async putDataIntoKinesis() {
    await this.kinesisPublisher.getProducer().putRecords([{
      Data: 'test-record'
    }]);
  }
}