@narando/stream-producer
Framework to emit kinesis events.
Getting Started
You need to have nodejs
and npm
installed.
$ npm install @narando/stream-producer
Usage
First you need to import the package.
import StreamProducer from "@narando/stream-producer";
Configuration
You need to set your AWS credentials and Kinesis settings for this package to work.
Below you can find an example config.js.
{
"aws": {
"auth": {
"accessKeyId": "",
"secretAccessKey": ""
},
"kinesis": {
"region": "eu-central-1",
"params": {
"StreamName": "dev-events"
}
}
}
}
Also you need to set a title, you can do this via the logger object or app variable.
{
"logger": {
"title": "api"
}
}
or
{
"app": "api"
}
Events
Emitting an event can be done by calling .event()
on the Stream Producer object.
StreamProducer.event(req, "user", "created", userId);
Required Parameters:
-
{Object}
Express request object that initiated the event (can be null) -
{String}
Object that got interacted with -
{String}
Description of the event -
{String}
Id of the Object that got interacted with
Optional Parameters:
-
{Object}
Any other data that should be send
Errors
Emitting an error is basically the same as emitting an event but it gets marked as an Error in the kinesis event stream. You can emit an error by calling .error()
on the Stream Producer object.
StreamProducer.error(req, err);
Required Parameters:
-
{Object}
Express request object that initiated the event (can be null) -
{Object}
The error object that got thrown
Optional Parameters:
-
{Object}
Any other data that should be send
Development
As this package is part of the toolkit monorepo, please refer to the top-level README to learn about hacking on this package.
Built With
- @narando/log
- @narando/config
- aws-sdk