@narando/event-producer

push events to sns

Usage no npm install needed!

<script type="module">
  import narandoEventProducer from 'https://cdn.skypack.dev/@narando/event-producer';
</script>

README

@narando/event-producer

Helps producing events to the Event System (SNS).

This README describes the package in-detail. See here for a more complete overview of the Event System.

Getting Started

You need to have nodejs and npm installed.

$ npm install @narando/event-producer

Usage

First you need to import the package.

import EventProducer from "@narando/event-producer";

Configuration

You need to set your AWS credentials and SNS settings for this package to work.

Below you can find an example config.js.

{
  "aws": {
    "auth": {
      "accessKeyId": "",
      "secretAccessKey": ""
    },
    "sns": {
      "arn": "",
      "region": "eu-central-1"
    }
  }
}

The arn of the sns topic you want to send your messages to (depends on the env)

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 Event Producer object.

EventProducer.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

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