UNPKG

@argodigital/qq-shared

Version:
35 lines (34 loc) 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var logger_1 = require("../logger"); var iopipe_1 = require("@iopipe/iopipe"); var ioPipeEnabled = 'true' !== process.env.DISABLE_IOPIPE; function snswrapper(fn) { return function (event, context, callback) { var message = JSON.parse(event.Records[0].Sns.Message); var log = logger_1.logger(context); if (ioPipeEnabled) { iopipe_1.metric('region', process.env.AWS_REGION); iopipe_1.metric('revision', process.env.REVISION); iopipe_1.metric('stage', process.env.STAGE); iopipe_1.metric('message', message); } function success(message) { if (ioPipeEnabled) { iopipe_1.label('valid'); } return callback(null, message); } function error(error) { log.error('Error', error, event); if (ioPipeEnabled) { iopipe_1.label('error'); iopipe_1.metric('error', error); } return callback(error); } var props = { message: message, success: success, error: error, log: log, event: event }; return fn(props); }; } exports.snswrapper = snswrapper;