@autofleet/rabbit 3.0.1-beta1 → 3.0.1-beta10

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
@@ -126,14 +126,24 @@ class RabbitMq {
126
126
  static getPublishOptions(customHeaders = {}) {
127
127
  const trace = zehut_1.getCurrentPayload();
128
128
  const user = trace?.context?.get(consts_1.USER_OBJECT);
129
- const outbreakTrace = zehut_1.oubtreak.getCurrentContext();
129
+ const traceId = trace?.context?.get(consts_1.TRACING_HEADER);
130
+ const outbreakTrace = zehut_1.outbreak.getCurrentContext();
131
+ const obj = Object.fromEntries(trace?.context);
132
+ const jsonString = JSON.stringify(obj);
133
+ logger_1.default.info('getPublishOptions', {
134
+ traceId,
135
+ user,
136
+ traceId2: outbreakTrace?.context?.get(consts_1.TRACING_HEADER),
137
+ traceContextSize: trace?.context?.size,
138
+ jsonString,
139
+ });
130
140
  return {
131
141
  timestamp: moment_1.default().unix(),
132
142
  headers: {
133
143
  creationTimestamp: moment_1.default().valueOf(),
134
144
  ...customHeaders,
135
145
  [consts_1.USER_TRACING_HEADER]: user?.id,
136
- [consts_1.TRACING_HEADER]: outbreakTrace?.context?.get(consts_1.TRACING_HEADER),
146
+ [consts_1.TRACING_HEADER]: traceId || outbreakTrace?.context?.get(consts_1.TRACING_HEADER),
137
147
  },
138
148
  };
139
149
  }
@@ -343,18 +353,37 @@ class RabbitMq {
343
353
  const parsedMessage = RabbitMq.parseMsg(msg);
344
354
  const releaseLock = await this.lockRedisIfNeeded(parsedMessage, optionsWithDefaults);
345
355
  const trace = zehut_1.newTrace(zehut_1.traceTypes.RABBIT);
346
- if (traceId) {
347
- trace?.context?.set(consts_1.TRACING_HEADER, traceId);
348
- }
356
+ const outbreakTrace = zehut_1.outbreak.newTrace(zehut_1.traceTypes.RABBIT);
349
357
  if (userId && enableRabbitTrace) {
350
358
  try {
351
- await zehut_1.createOrSetRabbitTrace(trace, userId);
359
+ await Promise.all([
360
+ zehut_1.createOrSetRabbitTrace(trace, userId),
361
+ zehut_1.createOrSetRabbitTrace(outbreakTrace, userId),
362
+ ]);
352
363
  }
353
364
  catch (e) {
354
365
  logger_1.default.error('rabbit: failed to setRabbitTrace', { userId, e });
355
366
  await this.nack(channel, queue, optionsWithDefaults, { messageTtl: deadMessageTtl }, msg, releaseLock)(msg);
356
367
  }
357
368
  }
369
+ logger_1.default.info('rabbit consume - first trace', {
370
+ trace,
371
+ outbreakTrace,
372
+ user: trace?.context?.get(consts_1.USER_OBJECT),
373
+ });
374
+ if (traceId) {
375
+ trace?.context?.set(consts_1.TRACING_HEADER, traceId);
376
+ outbreakTrace?.context.set(consts_1.TRACING_HEADER, traceId);
377
+ logger_1.default.info('rabbit consume - second trace', {
378
+ trace,
379
+ outbreakTrace,
380
+ user: trace?.context?.get(consts_1.USER_OBJECT),
381
+ traceId: trace?.context?.get(consts_1.TRACING_HEADER),
382
+ });
383
+ }
384
+ logger_1.default.info('rabbit consume - third trace', {
385
+ trace: zehut_1.getCurrentPayload(),
386
+ });
358
387
  if (auditContext) {
359
388
  await auditContext(queue);
360
389
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autofleet/rabbit",
3
- "version": "3.0.1-beta1",
3
+ "version": "3.0.1-beta10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "dependencies": {
18
18
  "@autofleet/logger": "^1.2.8",
19
- "@autofleet/zehut": "^3.0.1-beta2",
19
+ "@autofleet/zehut": "^3.0.1-beta3",
20
20
  "@types/amqplib": "0.8.2",
21
21
  "@types/uuid": "^8.3.3",
22
22
  "amqp-connection-manager": "4.1.9",
package/src/index.ts CHANGED
@@ -9,7 +9,7 @@ import {
9
9
  ConfirmChannel, ConsumeMessage, Options, Replies,
10
10
  } from 'amqplib';
11
11
  import {
12
- getCurrentPayload, newTrace, traceTypes, createOrSetRabbitTrace, oubtreak,
12
+ getCurrentPayload, newTrace, traceTypes, createOrSetRabbitTrace, outbreak,
13
13
  } from '@autofleet/zehut';
14
14
  import logger from './logger';
15
15
  import RabbitError from './lib/rabbitError';
@@ -114,14 +114,24 @@ class RabbitMq implements IAfRabbitMq {
114
114
  static getPublishOptions(customHeaders: CustomMessageHeaders = {}) {
115
115
  const trace = getCurrentPayload();
116
116
  const user = trace?.context?.get(USER_OBJECT);
117
- const outbreakTrace = oubtreak.getCurrentContext();
117
+ const traceId = trace?.context?.get(TRACING_HEADER);
118
+ const outbreakTrace = outbreak.getCurrentContext();
119
+ const obj = Object.fromEntries(trace?.context);
120
+ const jsonString = JSON.stringify(obj);
121
+ logger.info('getPublishOptions', {
122
+ traceId,
123
+ user,
124
+ traceId2: outbreakTrace?.context?.get(TRACING_HEADER),
125
+ traceContextSize: trace?.context?.size,
126
+ jsonString,
127
+ });
118
128
  return {
119
129
  timestamp: moment().unix(),
120
130
  headers: {
121
131
  creationTimestamp: moment().valueOf(),
122
132
  ...customHeaders,
123
133
  [USER_TRACING_HEADER]: user?.id,
124
- [TRACING_HEADER]: outbreakTrace?.context?.get(TRACING_HEADER),
134
+ [TRACING_HEADER]: traceId || outbreakTrace?.context?.get(TRACING_HEADER),
125
135
  },
126
136
  };
127
137
  }
@@ -487,18 +497,40 @@ class RabbitMq implements IAfRabbitMq {
487
497
  const parsedMessage = RabbitMq.parseMsg(msg);
488
498
  const releaseLock = await this.lockRedisIfNeeded(parsedMessage, optionsWithDefaults);
489
499
  const trace = newTrace(traceTypes.RABBIT);
490
- if (traceId) {
491
- (trace as any)?.context?.set(TRACING_HEADER, traceId);
492
- }
500
+ const outbreakTrace = outbreak.newTrace(traceTypes.RABBIT);
493
501
  if (userId && enableRabbitTrace) {
494
502
  try {
495
- await createOrSetRabbitTrace(trace, userId);
503
+ await Promise.all([
504
+ createOrSetRabbitTrace(trace, userId),
505
+ createOrSetRabbitTrace(outbreakTrace, userId),
506
+ ]);
496
507
  } catch (e) {
497
508
  logger.error('rabbit: failed to setRabbitTrace', { userId, e });
498
509
  await this.nack(channel, queue, optionsWithDefaults, { messageTtl: deadMessageTtl }, msg, releaseLock)(msg);
499
510
  }
500
511
  }
501
512
 
513
+ logger.info('rabbit consume - first trace', {
514
+ trace,
515
+ outbreakTrace,
516
+ user: trace?.context?.get(USER_OBJECT),
517
+ });
518
+
519
+ if (traceId) {
520
+ (trace as any)?.context?.set(TRACING_HEADER, traceId);
521
+ (outbreakTrace as any)?.context.set(TRACING_HEADER, traceId);
522
+ logger.info('rabbit consume - second trace', {
523
+ trace,
524
+ outbreakTrace,
525
+ user: trace?.context?.get(USER_OBJECT),
526
+ traceId: trace?.context?.get(TRACING_HEADER),
527
+ // traceId2: outbreakTrace?.context?.get(TRACING_HEADER),
528
+ });
529
+ }
530
+
531
+ logger.info('rabbit consume - third trace', {
532
+ trace: getCurrentPayload(),
533
+ });
502
534
  if (auditContext) {
503
535
  await auditContext(queue);
504
536
  }