serverless-spy
Version:
CDK-based library for writing elegant integration tests on AWS serverless architecture and an additional web console to monitor events in real time.
20 lines • 2.43 kB
JavaScript
import { SpyEventSender } from '../common/SpyEventSender';
export const handler = async (event) => {
const spyEventSender = new SpyEventSender({
scope: process.env['SSPY_ROOT_STACK'],
iotEndpoint: process.env['SSPY_IOT_ENDPOINT'],
});
try {
await spyEventSender.connect();
await spyEventSender.publishSpyEvent(event);
}
catch (e) {
console.error(e);
return { statusCode: 500, body: e?.stack };
}
finally {
await spyEventSender.close();
}
return { statusCode: 200, body: 'Data sent.' };
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZE1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9mdW5jdGlvbnMvc2VuZE1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTFELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxLQUFLLEVBQUUsS0FBVSxFQUFFLEVBQUU7SUFDMUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUM7UUFDeEMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUU7UUFDdEMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUU7S0FDL0MsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxDQUFDO1FBQ0gsTUFBTSxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0IsTUFBTSxjQUFjLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqQixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUcsQ0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ3hELENBQUM7WUFBUyxDQUFDO1FBQ1QsTUFBTSxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQztBQUNqRCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTcHlFdmVudFNlbmRlciB9IGZyb20gJy4uL2NvbW1vbi9TcHlFdmVudFNlbmRlcic7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKGV2ZW50OiBhbnkpID0+IHtcbiAgY29uc3Qgc3B5RXZlbnRTZW5kZXIgPSBuZXcgU3B5RXZlbnRTZW5kZXIoe1xuICAgIHNjb3BlOiBwcm9jZXNzLmVudlsnU1NQWV9ST09UX1NUQUNLJ10hLFxuICAgIGlvdEVuZHBvaW50OiBwcm9jZXNzLmVudlsnU1NQWV9JT1RfRU5EUE9JTlQnXSEsXG4gIH0pO1xuICB0cnkge1xuICAgIGF3YWl0IHNweUV2ZW50U2VuZGVyLmNvbm5lY3QoKTtcbiAgICBhd2FpdCBzcHlFdmVudFNlbmRlci5wdWJsaXNoU3B5RXZlbnQoZXZlbnQpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS5lcnJvcihlKTtcbiAgICByZXR1cm4geyBzdGF0dXNDb2RlOiA1MDAsIGJvZHk6IChlIGFzIEVycm9yKT8uc3RhY2sgfTtcbiAgfSBmaW5hbGx5IHtcbiAgICBhd2FpdCBzcHlFdmVudFNlbmRlci5jbG9zZSgpO1xuICB9XG5cbiAgcmV0dXJuIHsgc3RhdHVzQ29kZTogMjAwLCBib2R5OiAnRGF0YSBzZW50LicgfTtcbn07XG4iXX0=