@autofleet/rabbit 3.2.5 → 3.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ const moment_1 = __importDefault(require("moment"));
10
10
  const redis_lock_1 = __importDefault(require("redis-lock"));
11
11
  const amqp_connection_manager_1 = require("amqp-connection-manager");
12
12
  const zehut_1 = require("@autofleet/zehut");
13
+ const uuid_1 = require("uuid");
13
14
  const logger_1 = __importDefault(require("./logger"));
14
15
  const rabbitError_1 = __importDefault(require("./lib/rabbitError"));
15
16
  const redis_1 = __importDefault(require("./lib/redis"));
@@ -39,6 +40,7 @@ class RabbitMq {
39
40
  };
40
41
  this.ack = (channel, msg, shouldUpdateRedisTimestamp = false, releaseLock = null) => async (userMsg) => {
41
42
  if (msg) {
43
+ debug('rabbit acking message', { deliveryTag: msg.fields.deliveryTag });
42
44
  await channel.ack(msg);
43
45
  const { properties: { headers } } = msg;
44
46
  const timestamp = headers?.creationTimestamp;
@@ -71,6 +73,7 @@ class RabbitMq {
71
73
  : 1,
72
74
  });
73
75
  }
76
+ debug('rabbit nacking message', { deliveryTag: msg.fields.deliveryTag });
74
77
  await channel.ack(msg);
75
78
  }
76
79
  else {
@@ -345,6 +348,7 @@ class RabbitMq {
345
348
  async consumeFromRabbit(queue, callback, options) {
346
349
  const optionsWithDefaults = { ...consts_1.DEFAULT_OPTIONS, ...options };
347
350
  RabbitMq.validateName('queue', queue);
351
+ const uniqueId = uuid_1.v4();
348
352
  const { limit, deadMessageTtl, useConsumeWithLock, lockTimeout, auditContext, enableRabbitTrace, } = optionsWithDefaults;
349
353
  if (useConsumeWithLock) {
350
354
  if (!this.redisLock) {
@@ -399,6 +403,7 @@ class RabbitMq {
399
403
  if (messageAcked) {
400
404
  return;
401
405
  }
406
+ debug('rabbit localAck', { messageAcked, uniqueId, deliveryTag: msg.fields.deliveryTag });
402
407
  messageAcked = true;
403
408
  return this.ack(confirmChannel, msg, true, releaseLock)(msg);
404
409
  };
@@ -406,6 +411,7 @@ class RabbitMq {
406
411
  if (messageAcked) {
407
412
  return;
408
413
  }
414
+ debug('rabbit localNack', { messageAcked, uniqueId, deliveryTag: msg.fields.deliveryTag });
409
415
  messageAcked = true;
410
416
  return this.nack(confirmChannel, queue, optionsWithDefaults, { messageTtl: deadMessageTtl }, msg, releaseLock)(msg, nackOptions);
411
417
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autofleet/rabbit",
3
- "version": "3.2.5",
3
+ "version": "3.2.6",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/index.ts CHANGED
@@ -13,6 +13,7 @@ import {
13
13
  import {
14
14
  getCurrentPayload, newTrace, traceTypes, createOrSetRabbitTrace, outbreak,
15
15
  } from '@autofleet/zehut';
16
+ import { v4 } from 'uuid';
16
17
  import logger from './logger';
17
18
  import RabbitError from './lib/rabbitError';
18
19
  import getRedisInstance, { RedisConfig } from './lib/redis';
@@ -203,6 +204,7 @@ class RabbitMq implements IAfRabbitMq {
203
204
 
204
205
  public ack = (channel: ConfirmChannel, msg: ConsumeMessageOrNull, shouldUpdateRedisTimestamp = false, releaseLock = null) => async (userMsg: ConsumeMessage) : Promise<any> => {
205
206
  if (msg) {
207
+ debug('rabbit acking message', { deliveryTag: msg.fields.deliveryTag });
206
208
  await channel.ack(msg);
207
209
  const { properties: { headers } } = msg;
208
210
  const timestamp = headers?.creationTimestamp;
@@ -252,6 +254,7 @@ class RabbitMq implements IAfRabbitMq {
252
254
  : 1,
253
255
  });
254
256
  }
257
+ debug('rabbit nacking message', { deliveryTag: msg.fields.deliveryTag });
255
258
  await channel.ack(msg);
256
259
  } else {
257
260
  logger.error('no channel or msg', {
@@ -495,6 +498,7 @@ class RabbitMq implements IAfRabbitMq {
495
498
  private async consumeFromRabbit(queue: string, callback: CallbackFunction, options?: ConsumeOptions): Promise<any> {
496
499
  const optionsWithDefaults = { ...DEFAULT_OPTIONS, ...options };
497
500
  RabbitMq.validateName('queue', queue);
501
+ const uniqueId = v4();
498
502
  const {
499
503
  limit, deadMessageTtl, useConsumeWithLock, lockTimeout, auditContext, enableRabbitTrace,
500
504
  } = optionsWithDefaults;
@@ -557,6 +561,7 @@ class RabbitMq implements IAfRabbitMq {
557
561
  if (messageAcked) {
558
562
  return;
559
563
  }
564
+ debug('rabbit localAck', { messageAcked, uniqueId, deliveryTag: msg.fields.deliveryTag });
560
565
  messageAcked = true;
561
566
  return this.ack(confirmChannel, msg, true, releaseLock)(msg);
562
567
  };
@@ -565,6 +570,7 @@ class RabbitMq implements IAfRabbitMq {
565
570
  if (messageAcked) {
566
571
  return;
567
572
  }
573
+ debug('rabbit localNack', { messageAcked, uniqueId, deliveryTag: msg.fields.deliveryTag });
568
574
  messageAcked = true;
569
575
  return this.nack(confirmChannel, queue, optionsWithDefaults, { messageTtl: deadMessageTtl }, msg, releaseLock)(msg, nackOptions);
570
576
  };