const fs = require('fs'); // 'a' flag stands for 'append' const datetime = new Date().toISOString(); const file_name = `${datetime.slice(0,10)}_${datetime.slice(11,19)}`; console.log(file_name); const log = fs.createWriteStream(`${file_name}.txt`, { flags: 'a' }); const AWS = require('aws-sdk'); if (!AWS.config.region) { AWS.config.update({ region: 'eu-west-1' }); } const { Consumer } = require('sqs-consumer'); // console.log(process.env); var sqs = new AWS.SQS({ endpoint: 'https://sqs.eu-west-1.amazonaws.com', maxRetries: 10 }); function convertToNDJSON(data) { log.write(`${JSON.stringify(data)}\n`); } const url = process.env.DEAD_LETTER_QUEUE_URL ? process.env.DEAD_LETTER_QUEUE_URL : 'https://sqs.eu-west-1.amazonaws.com/123456789/dead_letter_dev_process_formbuilder_data_testing'; const msgUrl = process.env.QUEUE_URL ? process.env.QUEUE_URL : 'https://sqs.eu-west-1.amazonaws.com/123456789/dead_letter_dev_process_formbuilder_data'; const app = Consumer.create({ queueUrl: url, handleMessage: async (message) => { convertToNDJSON(message.Body); var dataToSend = { QueueUrl: msgUrl, MessageBody: message.Body } sqs.sendMessage(dataToSend, function (wErr, resp) { if (wErr) { console.log("Error while sending message: ", wErr) } else if(resp) { console.log(">>>> Message sent successfully: ", resp); } else { console.log("Responded with incorrect value: ",resp) } }); } }); app.on('error', (err) => { console.error(err.message); }); app.on('processing_error', (err) => { console.error(err.message); }); app.on('timeout_error', (err) => { console.error(err.message); serialize.end(); }); app.start();