1.0.1 • Published 6 years ago

events-nodejs-firehose v1.0.1

Weekly downloads
3
License
-
Repository
-
Last release
6 years ago

Event Publisher NodeJS SDK - README

This README would normally document whatever steps are necessary to get your application up and running.

  • This SDK can be integrated in NodeJS Projects.
  • Audit related data will be submitted to AWS Firehose stream.
  • 1.0.0

Setup

  • To install this package run the below command.
npm install events-nodejs-firehose
  • Create a directory named as log in the current directory to record the events data based on the request timeout.
$ mkdir log
var auditFirehose = require('events-nodejs-firehose');
var logFilePath = './log/audit.log'; // If this is false, no events will be logged. If null, the default path will be considered
var auditService = new auditFirehose.AuditService('STREAM-NAME', 'REGION', 'AWS-ACCOUNT-ACCESS-KEY', 'AWS-ACCOUNT-SECRET-KEY', logFilePath);
// You need to update the parameter with correct details in the above line.

var data = {
    "@version": "1.0",
    "@timestamp": "2018-04-12T11:22:53.955Z",
    "serviceID": "service id",
    "serviceNS": "service namespace",
    "operation": "READ",
    "objectType": "Customer",
    "objectID": "objectId",
    "authMechanism": "auth",
    "authID": "authid",
    "authToken": "authToken",
    "ipAddress": "1.1.1.1",
    "outcome": "success",
    "additionalData": {
        "metaData": {
            "url":
            "https://example.com/customers",
            "X-Env-Colour": "plum",
            "X-Git-Env": "da6b23985d0af2b24059748d19882d35e20f5658"
        },
        "rawData": [
            "Line 3Line 3Line 3Line 3Line 3Line 3Line 1"
        ]
    }
};

// Single record
auditService.putRecord(data).then(function(result) {
    console.log(result);
}, function (error) {
    console.log(error);
});

// Multiple records
auditService.putRecordBatch([data]).then(function (result) {
	console.log(result);
}, function (error) {
    console.log(error);
});

Components

The firehose delivery stream must be cretaed with S3 data backedup.