bullmq 5.21.2 → 5.23.0

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.
Files changed (92) hide show
  1. package/README.md +21 -21
  2. package/dist/cjs/classes/flow-producer.js +1 -0
  3. package/dist/cjs/classes/flow-producer.js.map +1 -1
  4. package/dist/cjs/classes/job-scheduler.js +14 -0
  5. package/dist/cjs/classes/job-scheduler.js.map +1 -1
  6. package/dist/cjs/classes/job.js +61 -41
  7. package/dist/cjs/classes/job.js.map +1 -1
  8. package/dist/cjs/classes/queue-base.js +54 -0
  9. package/dist/cjs/classes/queue-base.js.map +1 -1
  10. package/dist/cjs/classes/queue-events.js.map +1 -1
  11. package/dist/cjs/classes/queue.js +172 -76
  12. package/dist/cjs/classes/queue.js.map +1 -1
  13. package/dist/cjs/classes/worker.js +232 -128
  14. package/dist/cjs/classes/worker.js.map +1 -1
  15. package/dist/cjs/commands/includes/moveParentFromWaitingChildrenToFailed.lua +2 -2
  16. package/dist/cjs/commands/includes/removeDeduplicationKeyIfNeeded.lua +14 -0
  17. package/dist/cjs/commands/moveStalledJobsToWait-9.lua +3 -3
  18. package/dist/cjs/commands/moveToFinished-14.lua +2 -2
  19. package/dist/cjs/commands/updateJobOption-1.lua +26 -0
  20. package/dist/cjs/enums/index.js +1 -0
  21. package/dist/cjs/enums/index.js.map +1 -1
  22. package/dist/cjs/enums/telemetry-attributes.js +45 -0
  23. package/dist/cjs/enums/telemetry-attributes.js.map +1 -0
  24. package/dist/cjs/interfaces/index.js +1 -0
  25. package/dist/cjs/interfaces/index.js.map +1 -1
  26. package/dist/cjs/interfaces/queue-options.js.map +1 -1
  27. package/dist/cjs/interfaces/telemetry.js +3 -0
  28. package/dist/cjs/interfaces/telemetry.js.map +1 -0
  29. package/dist/cjs/scripts/index.js +1 -0
  30. package/dist/cjs/scripts/index.js.map +1 -1
  31. package/dist/cjs/scripts/moveStalledJobsToWait-9.js +9 -9
  32. package/dist/cjs/scripts/moveToFinished-14.js +8 -8
  33. package/dist/cjs/scripts/updateJobOption-1.js +30 -0
  34. package/dist/cjs/scripts/updateJobOption-1.js.map +1 -0
  35. package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
  36. package/dist/cjs/version.js +1 -1
  37. package/dist/esm/classes/flow-producer.js +1 -0
  38. package/dist/esm/classes/flow-producer.js.map +1 -1
  39. package/dist/esm/classes/job-scheduler.d.ts +2 -1
  40. package/dist/esm/classes/job-scheduler.js +14 -0
  41. package/dist/esm/classes/job-scheduler.js.map +1 -1
  42. package/dist/esm/classes/job.d.ts +2 -0
  43. package/dist/esm/classes/job.js +61 -41
  44. package/dist/esm/classes/job.js.map +1 -1
  45. package/dist/esm/classes/queue-base.d.ts +19 -1
  46. package/dist/esm/classes/queue-base.js +54 -0
  47. package/dist/esm/classes/queue-base.js.map +1 -1
  48. package/dist/esm/classes/queue-events.js.map +1 -1
  49. package/dist/esm/classes/queue.d.ts +6 -0
  50. package/dist/esm/classes/queue.js +172 -76
  51. package/dist/esm/classes/queue.js.map +1 -1
  52. package/dist/esm/classes/worker.d.ts +2 -1
  53. package/dist/esm/classes/worker.js +232 -128
  54. package/dist/esm/classes/worker.js.map +1 -1
  55. package/dist/esm/commands/includes/moveParentFromWaitingChildrenToFailed.lua +2 -2
  56. package/dist/esm/commands/includes/removeDeduplicationKeyIfNeeded.lua +14 -0
  57. package/dist/esm/commands/moveStalledJobsToWait-9.lua +3 -3
  58. package/dist/esm/commands/moveToFinished-14.lua +2 -2
  59. package/dist/esm/commands/updateJobOption-1.lua +26 -0
  60. package/dist/esm/enums/index.d.ts +1 -0
  61. package/dist/esm/enums/index.js +1 -0
  62. package/dist/esm/enums/index.js.map +1 -1
  63. package/dist/esm/enums/telemetry-attributes.d.ts +39 -0
  64. package/dist/esm/enums/telemetry-attributes.js +42 -0
  65. package/dist/esm/enums/telemetry-attributes.js.map +1 -0
  66. package/dist/esm/interfaces/base-job-options.d.ts +4 -0
  67. package/dist/esm/interfaces/index.d.ts +1 -0
  68. package/dist/esm/interfaces/index.js +1 -0
  69. package/dist/esm/interfaces/index.js.map +1 -1
  70. package/dist/esm/interfaces/queue-options.d.ts +9 -0
  71. package/dist/esm/interfaces/queue-options.js.map +1 -1
  72. package/dist/esm/interfaces/repeatable-job.d.ts +1 -1
  73. package/dist/esm/interfaces/telemetry.d.ts +150 -0
  74. package/dist/esm/interfaces/telemetry.js +2 -0
  75. package/dist/esm/interfaces/telemetry.js.map +1 -0
  76. package/dist/esm/interfaces/worker-options.d.ts +13 -0
  77. package/dist/esm/scripts/index.d.ts +1 -0
  78. package/dist/esm/scripts/index.js +1 -0
  79. package/dist/esm/scripts/index.js.map +1 -1
  80. package/dist/esm/scripts/moveStalledJobsToWait-9.js +9 -9
  81. package/dist/esm/scripts/moveToFinished-14.js +8 -8
  82. package/dist/esm/scripts/updateJobOption-1.d.ts +5 -0
  83. package/dist/esm/scripts/updateJobOption-1.js +27 -0
  84. package/dist/esm/scripts/updateJobOption-1.js.map +1 -0
  85. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  86. package/dist/esm/types/job-options.d.ts +4 -0
  87. package/dist/esm/types/minimal-queue.d.ts +1 -1
  88. package/dist/esm/version.d.ts +1 -1
  89. package/dist/esm/version.js +1 -1
  90. package/package.json +2 -2
  91. package/dist/cjs/commands/includes/removeDebounceKeyIfNeeded.lua +0 -14
  92. package/dist/esm/commands/includes/removeDebounceKeyIfNeeded.lua +0 -14
@@ -4,6 +4,7 @@ import { errorObject, invertObject, isEmpty, getParentKey, lengthInUtf8Bytes, pa
4
4
  import { Backoffs } from './backoffs';
5
5
  import { Scripts, raw2NextJobData } from './scripts';
6
6
  import { UnrecoverableError } from './errors/unrecoverable-error';
7
+ import { SpanKind } from '../enums';
7
8
  const logger = debuglog('bull');
8
9
  const optsDecodeMap = {
9
10
  de: 'deduplication',
@@ -11,6 +12,7 @@ const optsDecodeMap = {
11
12
  idof: 'ignoreDependencyOnFailure',
12
13
  kl: 'keepLogs',
13
14
  rdof: 'removeDependencyOnFailure',
15
+ tm: 'telemetryMetadata',
14
16
  };
15
17
  const optsEncodeMap = invertObject(optsDecodeMap);
16
18
  optsEncodeMap.debounce = 'de';
@@ -408,6 +410,18 @@ export class Job {
408
410
  this.attemptsMade += 1;
409
411
  return result;
410
412
  }
413
+ async shouldRetryJob(err) {
414
+ if (this.attemptsMade + 1 < this.opts.attempts &&
415
+ !this.discarded &&
416
+ !(err instanceof UnrecoverableError || err.name == 'UnrecoverableError')) {
417
+ const opts = this.queue.opts;
418
+ const delay = await Backoffs.calculate(this.opts.backoff, this.attemptsMade + 1, err, this, opts.settings && opts.settings.backoffStrategy);
419
+ return [delay == -1 ? false : true, delay == -1 ? 0 : delay];
420
+ }
421
+ else {
422
+ return [false, 0];
423
+ }
424
+ }
411
425
  /**
412
426
  * Moves a job to the failed queue.
413
427
  *
@@ -419,7 +433,6 @@ export class Job {
419
433
  async moveToFailed(err, token, fetchNext = false) {
420
434
  const client = await this.queue.client;
421
435
  const message = err === null || err === void 0 ? void 0 : err.message;
422
- const queue = this.queue;
423
436
  this.failedReason = message;
424
437
  let command;
425
438
  const multi = client.multi();
@@ -427,19 +440,11 @@ export class Job {
427
440
  //
428
441
  // Check if an automatic retry should be performed
429
442
  //
430
- let moveToFailed = false;
431
- let finishedOn, delay;
432
- if (this.attemptsMade + 1 < this.opts.attempts &&
433
- !this.discarded &&
434
- !(err instanceof UnrecoverableError || err.name == 'UnrecoverableError')) {
435
- const opts = queue.opts;
436
- // Check if backoff is needed
437
- delay = await Backoffs.calculate(this.opts.backoff, this.attemptsMade + 1, err, this, opts.settings && opts.settings.backoffStrategy);
438
- if (delay === -1) {
439
- moveToFailed = true;
440
- }
441
- else if (delay) {
442
- const args = this.scripts.moveToDelayedArgs(this.id, Date.now(), token, delay);
443
+ let finishedOn;
444
+ const [shouldRetry, retryDelay] = await this.shouldRetryJob(err);
445
+ if (shouldRetry) {
446
+ if (retryDelay) {
447
+ const args = this.scripts.moveToDelayedArgs(this.id, Date.now(), token, retryDelay);
443
448
  this.scripts.execCommand(multi, 'moveToDelayed', args);
444
449
  command = 'moveToDelayed';
445
450
  }
@@ -450,38 +455,53 @@ export class Job {
450
455
  }
451
456
  }
452
457
  else {
453
- // If not, move to failed
454
- moveToFailed = true;
455
- }
456
- if (moveToFailed) {
457
458
  const args = this.scripts.moveToFailedArgs(this, message, this.opts.removeOnFail, token, fetchNext);
458
459
  this.scripts.execCommand(multi, 'moveToFinished', args);
459
460
  finishedOn = args[this.scripts.moveToFinishedKeys.length + 1];
460
461
  command = 'moveToFinished';
461
462
  }
462
- const results = await multi.exec();
463
- const anyError = results.find(result => result[0]);
464
- if (anyError) {
465
- throw new Error(`Error "moveToFailed" with command ${command}: ${anyError}`);
466
- }
467
- const result = results[results.length - 1][1];
468
- if (result < 0) {
469
- throw this.scripts.finishedErrors({
470
- code: result,
471
- jobId: this.id,
472
- command,
473
- state: 'active',
474
- });
475
- }
476
- if (finishedOn && typeof finishedOn === 'number') {
477
- this.finishedOn = finishedOn;
478
- }
479
- if (delay && typeof delay === 'number') {
480
- this.delay = delay;
481
- }
482
- this.attemptsMade += 1;
483
- if (Array.isArray(result)) {
484
- return raw2NextJobData(result);
463
+ return this.queue.trace(SpanKind.INTERNAL, this.getSpanOperation(command), this.queue.name, async (span, dstPropagationMedatadata) => {
464
+ if (dstPropagationMedatadata) {
465
+ this.scripts.execCommand(multi, 'updateJobOption', [
466
+ this.toKey(this.id),
467
+ 'tm',
468
+ dstPropagationMedatadata,
469
+ ]);
470
+ }
471
+ const results = await multi.exec();
472
+ const anyError = results.find(result => result[0]);
473
+ if (anyError) {
474
+ throw new Error(`Error "moveToFailed" with command ${command}: ${anyError}`);
475
+ }
476
+ const result = results[results.length - 1][1];
477
+ if (result < 0) {
478
+ throw this.scripts.finishedErrors({
479
+ code: result,
480
+ jobId: this.id,
481
+ command,
482
+ state: 'active',
483
+ });
484
+ }
485
+ if (finishedOn && typeof finishedOn === 'number') {
486
+ this.finishedOn = finishedOn;
487
+ }
488
+ if (retryDelay && typeof retryDelay === 'number') {
489
+ this.delay = retryDelay;
490
+ }
491
+ this.attemptsMade += 1;
492
+ if (Array.isArray(result)) {
493
+ return raw2NextJobData(result);
494
+ }
495
+ });
496
+ }
497
+ getSpanOperation(command) {
498
+ switch (command) {
499
+ case 'moveToDelayed':
500
+ return 'delay';
501
+ case 'retryJob':
502
+ return 'retry';
503
+ case 'moveToFinished':
504
+ return 'fail';
485
505
  }
486
506
  }
487
507
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from 'events';
3
- import { QueueBaseOptions, RedisClient } from '../interfaces';
3
+ import { QueueBaseOptions, RedisClient, Span } from '../interfaces';
4
4
  import { MinimalQueue } from '../types';
5
5
  import { RedisConnection } from './redis-connection';
6
6
  import { Job } from './job';
7
7
  import { KeysMap } from './queue-keys';
8
8
  import { Scripts } from './scripts';
9
+ import { SpanKind } from '../enums';
9
10
  /**
10
11
  * @class QueueBase
11
12
  * @extends EventEmitter
@@ -24,6 +25,12 @@ export declare class QueueBase extends EventEmitter implements MinimalQueue {
24
25
  protected scripts: Scripts;
25
26
  protected connection: RedisConnection;
26
27
  readonly qualifiedName: string;
28
+ /**
29
+ * Instance of a telemetry client
30
+ * To use it wrap the code with trace helper
31
+ * It will check if tracer is provided and if not it will continue as is
32
+ */
33
+ private tracer;
27
34
  /**
28
35
  *
29
36
  * @param name - The name of the queue.
@@ -67,4 +74,15 @@ export declare class QueueBase extends EventEmitter implements MinimalQueue {
67
74
  */
68
75
  disconnect(): Promise<void>;
69
76
  protected checkConnectionError<T>(fn: () => Promise<T>, delayInMs?: number): Promise<T | undefined>;
77
+ /**
78
+ * Wraps the code with telemetry and provides a span for configuration.
79
+ *
80
+ * @param spanKind - kind of the span: Producer, Consumer, Internal
81
+ * @param operation - operation name (such as add, process, etc)
82
+ * @param destination - destination name (normally the queue name)
83
+ * @param callback - code to wrap with telemetry
84
+ * @param srcPropagationMedatada -
85
+ * @returns
86
+ */
87
+ trace<T>(spanKind: SpanKind, operation: string, destination: string, callback: (span?: Span, dstPropagationMetadata?: string) => Promise<T> | T, srcPropagationMetadata?: string): Promise<T>;
70
88
  }
@@ -4,6 +4,7 @@ import { RedisConnection } from './redis-connection';
4
4
  import { Job } from './job';
5
5
  import { QueueKeys } from './queue-keys';
6
6
  import { Scripts } from './scripts';
7
+ import { TelemetryAttributes, SpanKind } from '../enums';
7
8
  /**
8
9
  * @class QueueBase
9
10
  * @extends EventEmitter
@@ -44,6 +45,9 @@ export class QueueBase extends EventEmitter {
44
45
  this.keys = queueKeys.getKeys(name);
45
46
  this.toKey = (type) => queueKeys.toKey(name, type);
46
47
  this.setScripts();
48
+ if (opts === null || opts === void 0 ? void 0 : opts.telemetry) {
49
+ this.tracer = opts.telemetry.tracer;
50
+ }
47
51
  }
48
52
  /**
49
53
  * Returns a promise that resolves to a redis client. Normally used only by subclasses.
@@ -132,5 +136,55 @@ export class QueueBase extends EventEmitter {
132
136
  }
133
137
  }
134
138
  }
139
+ /**
140
+ * Wraps the code with telemetry and provides a span for configuration.
141
+ *
142
+ * @param spanKind - kind of the span: Producer, Consumer, Internal
143
+ * @param operation - operation name (such as add, process, etc)
144
+ * @param destination - destination name (normally the queue name)
145
+ * @param callback - code to wrap with telemetry
146
+ * @param srcPropagationMedatada -
147
+ * @returns
148
+ */
149
+ async trace(spanKind, operation, destination, callback, srcPropagationMetadata) {
150
+ if (!this.tracer) {
151
+ return callback();
152
+ }
153
+ const currentContext = this.opts.telemetry.contextManager.active();
154
+ let parentContext;
155
+ if (srcPropagationMetadata) {
156
+ parentContext = this.opts.telemetry.contextManager.fromMetadata(currentContext, srcPropagationMetadata);
157
+ }
158
+ const spanName = `${operation} ${destination}`;
159
+ const span = this.tracer.startSpan(spanName, {
160
+ kind: spanKind,
161
+ }, parentContext);
162
+ try {
163
+ span.setAttributes({
164
+ [TelemetryAttributes.QueueName]: this.name,
165
+ [TelemetryAttributes.QueueOperation]: operation,
166
+ });
167
+ let messageContext;
168
+ let dstPropagationMetadata;
169
+ if (spanKind === SpanKind.CONSUMER) {
170
+ messageContext = span.setSpanOnContext(parentContext);
171
+ }
172
+ else {
173
+ messageContext = span.setSpanOnContext(currentContext);
174
+ }
175
+ if (callback.length == 2) {
176
+ dstPropagationMetadata =
177
+ this.opts.telemetry.contextManager.getMetadata(messageContext);
178
+ }
179
+ return await this.opts.telemetry.contextManager.with(messageContext, () => callback(span, dstPropagationMetadata));
180
+ }
181
+ catch (err) {
182
+ span.recordException(err);
183
+ throw err;
184
+ }
185
+ finally {
186
+ span.end();
187
+ }
188
+ }
135
189
  }
136
190
  //# sourceMappingURL=queue-base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queue-base.js","sourceRoot":"","sources":["../../../src/classes/queue-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue-base.js","sourceRoot":"","sources":["../../../src/classes/queue-base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue-events.js","sourceRoot":"","sources":["../../../src/classes/queue-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue-events.js","sourceRoot":"","sources":["../../../src/classes/queue-events.ts"],"names":[],"mappings":"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"}
@@ -189,6 +189,12 @@ export declare class Queue<DataType = any, ResultType = any, NameType extends st
189
189
  * next execution time.
190
190
  */
191
191
  getRepeatableJobs(start?: number, end?: number, asc?: boolean): Promise<RepeatableJob[]>;
192
+ /**
193
+ * Get Job Scheduler by id
194
+ *
195
+ * @param id - identifier of scheduler.
196
+ */
197
+ getJobScheduler(id: string): Promise<RepeatableJob>;
192
198
  /**
193
199
  * Get all Job Schedulers
194
200
  *