bullmq 1.75.0 → 1.76.1

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 (60) hide show
  1. package/dist/bullmq.d.ts +434 -3
  2. package/dist/cjs/classes/flow-producer.js.map +1 -1
  3. package/dist/cjs/classes/index.d.ts +10 -4
  4. package/dist/cjs/classes/index.js +10 -4
  5. package/dist/cjs/classes/index.js.map +1 -1
  6. package/dist/cjs/classes/queue-getters.d.ts +34 -0
  7. package/dist/cjs/classes/queue-getters.js +58 -1
  8. package/dist/cjs/classes/queue-getters.js.map +1 -1
  9. package/dist/cjs/classes/scripts.js +4 -1
  10. package/dist/cjs/classes/scripts.js.map +1 -1
  11. package/dist/cjs/commands/includes/collectMetrics.lua +42 -0
  12. package/dist/cjs/commands/moveToActive-8.lua +14 -4
  13. package/dist/cjs/commands/{moveToFinished-8.lua → moveToFinished-9.lua} +17 -8
  14. package/dist/cjs/commands/obliterate-2.lua +13 -4
  15. package/dist/cjs/enums/index.d.ts +1 -0
  16. package/dist/cjs/enums/index.js +1 -0
  17. package/dist/cjs/enums/index.js.map +1 -1
  18. package/dist/cjs/enums/metrics-time.d.ts +10 -0
  19. package/dist/cjs/enums/metrics-time.js +15 -0
  20. package/dist/cjs/enums/metrics-time.js.map +1 -0
  21. package/dist/cjs/interfaces/index.d.ts +2 -0
  22. package/dist/cjs/interfaces/index.js +2 -0
  23. package/dist/cjs/interfaces/index.js.map +1 -1
  24. package/dist/cjs/interfaces/metrics-options.d.ts +12 -0
  25. package/dist/cjs/interfaces/metrics-options.js +3 -0
  26. package/dist/cjs/interfaces/metrics-options.js.map +1 -0
  27. package/dist/cjs/interfaces/metrics.d.ts +9 -0
  28. package/dist/cjs/interfaces/metrics.js +3 -0
  29. package/dist/cjs/interfaces/metrics.js.map +1 -0
  30. package/dist/cjs/interfaces/worker-options.d.ts +7 -0
  31. package/dist/esm/classes/flow-producer.js.map +1 -1
  32. package/dist/esm/classes/index.d.ts +10 -4
  33. package/dist/esm/classes/index.js +10 -4
  34. package/dist/esm/classes/index.js.map +1 -1
  35. package/dist/esm/classes/queue-getters.d.ts +34 -0
  36. package/dist/esm/classes/queue-getters.js +58 -1
  37. package/dist/esm/classes/queue-getters.js.map +1 -1
  38. package/dist/esm/classes/scripts.js +4 -1
  39. package/dist/esm/classes/scripts.js.map +1 -1
  40. package/dist/esm/commands/includes/collectMetrics.lua +42 -0
  41. package/dist/esm/commands/moveToActive-8.lua +14 -4
  42. package/dist/esm/commands/{moveToFinished-8.lua → moveToFinished-9.lua} +17 -8
  43. package/dist/esm/commands/obliterate-2.lua +13 -4
  44. package/dist/esm/enums/index.d.ts +1 -0
  45. package/dist/esm/enums/index.js +1 -0
  46. package/dist/esm/enums/index.js.map +1 -1
  47. package/dist/esm/enums/metrics-time.d.ts +10 -0
  48. package/dist/esm/enums/metrics-time.js +12 -0
  49. package/dist/esm/enums/metrics-time.js.map +1 -0
  50. package/dist/esm/interfaces/index.d.ts +2 -0
  51. package/dist/esm/interfaces/index.js +2 -0
  52. package/dist/esm/interfaces/index.js.map +1 -1
  53. package/dist/esm/interfaces/metrics-options.d.ts +12 -0
  54. package/dist/esm/interfaces/metrics-options.js +1 -0
  55. package/dist/esm/interfaces/metrics-options.js.map +1 -0
  56. package/dist/esm/interfaces/metrics.d.ts +9 -0
  57. package/dist/esm/interfaces/metrics.js +1 -0
  58. package/dist/esm/interfaces/metrics.js.map +1 -0
  59. package/dist/esm/interfaces/worker-options.d.ts +7 -0
  60. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ *
3
+ *
4
+ */
5
+ export interface MetricsOptions {
6
+ /**
7
+ * Enable gathering metrics for finished jobs.
8
+ * Output refers to all finished jobs, completed or
9
+ * failed.
10
+ */
11
+ maxDataPoints?: number;
12
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=metrics-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-options.js","sourceRoot":"","sources":["../../../src/interfaces/metrics-options.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ export interface Metrics {
2
+ meta: {
3
+ count: number;
4
+ prevTS: number;
5
+ prevCount: number;
6
+ };
7
+ data: number[];
8
+ count: number;
9
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/interfaces/metrics.ts"],"names":[],"mappings":""}
@@ -2,6 +2,7 @@ import { Job } from '../classes/job';
2
2
  import { AdvancedOptions } from './advanced-options';
3
3
  import { QueueBaseOptions } from './queue-options';
4
4
  import { RateLimiterOptions } from './rate-limiter-options';
5
+ import { MetricsOptions } from './metrics-options';
5
6
  /**
6
7
  * An async function that receives `Job`s and handles them.
7
8
  */
@@ -19,9 +20,15 @@ export interface WorkerOptions extends QueueBaseOptions {
19
20
  */
20
21
  concurrency?: number;
21
22
  /**
23
+ * Enable rate limiter
22
24
  * @see {@link https://docs.bullmq.io/guide/rate-limiting}
23
25
  */
24
26
  limiter?: RateLimiterOptions;
27
+ /**
28
+ * Enable collect metrics.
29
+ * @see {@link https://docs.bullmq.io/guide/metrics}
30
+ */
31
+ metrics?: MetricsOptions;
25
32
  skipDelayCheck?: boolean;
26
33
  drainDelay?: number;
27
34
  lockDuration?: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bullmq",
3
- "version": "1.75.0",
3
+ "version": "1.76.1",
4
4
  "description": "Queue for messages and jobs based on Redis",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",