Browse Source

Improve js executor kafka consumer to exit application in case of not retryable error.

pull/5185/head
Igor Kulikov 5 years ago
parent
commit
0d7adb73eb
  1. 10
      msa/js-executor/queue/kafkaTemplate.js

10
msa/js-executor/queue/kafkaTemplate.js

@ -190,6 +190,16 @@ async function sendMessagesAsBatch(isImmediately) {
removeListeners[COMMIT_OFFSETS] = consumer.on(COMMIT_OFFSETS, e => logger.info(`consumer COMMIT_OFFSETS topics ${e.payload.topics}`));
*/
const { CRASH } = consumer.events;
consumer.on(CRASH, e => {
logger.error(`Got consumer CRASH event, should restart: ${e.payload.restart}`);
if (!e.payload.restart) {
logger.error('Going to exit due to not retryable error!');
exit(-1);
}
});
const messageProcessor = new JsInvokeMessageProcessor(new KafkaProducer());
await consumer.connect();
await producer.connect();

Loading…
Cancel
Save