@alanszp/queue 20.4.2 → 20.4.4

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.
@@ -115,12 +115,27 @@ class Worker {
115
115
  });
116
116
  }
117
117
  registerHooks() {
118
- // on error: handle unhandled exceptions
118
+ // on error: handle unhandled exceptions. There is no job here, so there is
119
+ // no lifecycle to recover.
119
120
  this.worker.on("error", (error) => this.processError(error));
120
- // on completed: allow to do something else after a job is completed
121
- this.worker.on("completed", (job, result) => this.processCompleted(job, result));
122
- // on failed: when the process fails with an exception it is possible to listen for the "failed" event
123
- this.worker.on("failed", (job, error) => this.processFailed(job, error));
121
+ // on completed/failed: BullMQ emits these events outside the process()
122
+ // context, so we re-establish the job lifecycle context (lid/lch from
123
+ // job.data) before handling them. This keeps the lifecycle in every log
124
+ // (and Slack notification) the same way it works inside process().
125
+ this.worker.on("completed", (job, result) => (0, withContext_1.runInJobContext)(this.queueFullName, this.getContext(), job, () => this.processCompleted(job, result)));
126
+ // BullMQ may emit "failed" with an undefined job (e.g. a stalled job
127
+ // removed by removeOnFail); there is no job.data to recover the lifecycle
128
+ // from, so we log without context.
129
+ this.worker.on("failed", (job, error) => {
130
+ if (!job) {
131
+ this.getLogger().error(`worker.job.failed.${(0, lodash_1.snakeCase)(this.queueFullName)}`, {
132
+ queue: this.queueFullName,
133
+ error,
134
+ });
135
+ return;
136
+ }
137
+ return (0, withContext_1.runInJobContext)(this.queueFullName, this.getContext(), job, () => this.processFailed(job, error));
138
+ });
124
139
  }
125
140
  get worker() {
126
141
  return this._worker;
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker/worker.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Job, JobData } from "bullmq";
2
2
  import { WorkerContext } from "../worker/worker";
3
3
  import { JobReturnValue } from "../types";
4
+ export declare function runInJobContext<T = JobData, ReturnValue = void>(queueName: string, workerContext: WorkerContext, job: Job<T>, executor: () => Promise<ReturnValue>): Promise<ReturnValue>;
4
5
  export declare function withContext<T = JobData, ReturnValue = JobReturnValue>(queueName: string, workerContext: WorkerContext, executor: (job: Job<T>) => Promise<ReturnValue>): (job: Job<T>) => Promise<ReturnValue>;
@@ -12,27 +12,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.runInJobContext = runInJobContext;
15
16
  exports.withContext = withContext;
16
17
  const cuid2_1 = require("@paralleldrive/cuid2");
17
18
  const core_1 = require("@alanszp/core");
18
19
  const newrelic_1 = __importDefault(require("newrelic"));
19
- function withContext(queueName, workerContext, executor) {
20
- return (job) => {
21
- const { lid, lch } = job.data;
22
- return workerContext.sharedContext.run((context) => __awaiter(this, void 0, void 0, function* () {
23
- newrelic_1.default.addCustomAttributes({
24
- lch: context.lifecycleChain,
25
- lid: context.lifecycleId,
26
- cid: context.contextId,
27
- });
28
- return executor(job);
29
- }), {
30
- logger: workerContext.baseLogger,
31
- audit: workerContext.audit.withState(),
32
- lifecycleId: lid || (0, cuid2_1.createId)(),
33
- lifecycleChain: (0, core_1.concatLifecycleChain)(lch, `wkr:${queueName}:${(0, core_1.appEnv)()}`),
34
- contextId: (0, cuid2_1.createId)(),
20
+ function runInJobContext(queueName, workerContext, job, executor) {
21
+ const { lid, lch } = job.data;
22
+ return workerContext.sharedContext.run((context) => __awaiter(this, void 0, void 0, function* () {
23
+ newrelic_1.default.addCustomAttributes({
24
+ lch: context.lifecycleChain,
25
+ lid: context.lifecycleId,
26
+ cid: context.contextId,
35
27
  });
36
- };
28
+ return executor();
29
+ }), {
30
+ logger: workerContext.baseLogger,
31
+ audit: workerContext.audit.withState(),
32
+ lifecycleId: lid || (0, cuid2_1.createId)(),
33
+ lifecycleChain: (0, core_1.concatLifecycleChain)(lch, `wkr:${queueName}:${(0, core_1.appEnv)()}`),
34
+ contextId: (0, cuid2_1.createId)(),
35
+ });
36
+ }
37
+ function withContext(queueName, workerContext, executor) {
38
+ return (job) => runInJobContext(queueName, workerContext, job, () => executor(job));
37
39
  }
38
40
  //# sourceMappingURL=withContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"withContext.js","sourceRoot":"","sources":["../../src/wrappers/withContext.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAQA,kCA6BC;AArCD,gDAAgD;AAChD,wCAA6D;AAK7D,wDAAgC;AAEhC,SAAgB,WAAW,CACzB,SAAiB,EACjB,aAA4B,EAC5B,QAA+C;IAE/C,OAAO,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,IAAsC,CAAC;QAChE,OAAO,aAAa,CAAC,aAAa,CAAC,GAAG,CACpC,CAAO,OAAO,EAAE,EAAE;YAChB,kBAAQ,CAAC,mBAAmB,CAAC;gBAC3B,GAAG,EAAE,OAAO,CAAC,cAAc;gBAC3B,GAAG,EAAE,OAAO,CAAC,WAAW;gBACxB,GAAG,EAAE,OAAO,CAAC,SAAS;aACvB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC,CAAA,EACD;YACE,MAAM,EAAE,aAAa,CAAC,UAAU;YAChC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE;YACtC,WAAW,EAAE,GAAG,IAAI,IAAA,gBAAQ,GAAE;YAC9B,cAAc,EAAE,IAAA,2BAAoB,EAClC,GAAG,EACH,OAAO,SAAS,IAAI,IAAA,aAAM,GAAE,EAAE,CAC/B;YACD,SAAS,EAAE,IAAA,gBAAQ,GAAE;SACtB,CACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"withContext.js","sourceRoot":"","sources":["../../src/wrappers/withContext.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAOA,0CAyBC;AAED,kCAOC;AAzCD,gDAAgD;AAChD,wCAA6D;AAI7D,wDAAgC;AAEhC,SAAgB,eAAe,CAC7B,SAAiB,EACjB,aAA4B,EAC5B,GAAW,EACX,QAAoC;IAEpC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,IAAsC,CAAC;IAChE,OAAO,aAAa,CAAC,aAAa,CAAC,GAAG,CACpC,CAAO,OAAO,EAAE,EAAE;QAChB,kBAAQ,CAAC,mBAAmB,CAAC;YAC3B,GAAG,EAAE,OAAO,CAAC,cAAc;YAC3B,GAAG,EAAE,OAAO,CAAC,WAAW;YACxB,GAAG,EAAE,OAAO,CAAC,SAAS;SACvB,CAAC,CAAC;QAEH,OAAO,QAAQ,EAAE,CAAC;IACpB,CAAC,CAAA,EACD;QACE,MAAM,EAAE,aAAa,CAAC,UAAU;QAChC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE;QACtC,WAAW,EAAE,GAAG,IAAI,IAAA,gBAAQ,GAAE;QAC9B,cAAc,EAAE,IAAA,2BAAoB,EAAC,GAAG,EAAE,OAAO,SAAS,IAAI,IAAA,aAAM,GAAE,EAAE,CAAC;QACzE,SAAS,EAAE,IAAA,gBAAQ,GAAE;KACtB,CACF,CAAC;AACJ,CAAC;AAED,SAAgB,WAAW,CACzB,SAAiB,EACjB,aAA4B,EAC5B,QAA+C;IAE/C,OAAO,CAAC,GAAG,EAAE,EAAE,CACb,eAAe,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AACxE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alanszp/queue",
3
- "version": "20.4.2",
3
+ "version": "20.4.4",
4
4
  "description": "Workers and queues",
5
5
  "main": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
@@ -16,9 +16,9 @@
16
16
  "yalc-publish": "pnpm run yalc publish"
17
17
  },
18
18
  "devDependencies": {
19
- "@alanszp/audit": "^20.4.2",
20
- "@alanszp/logger": "^20.4.2",
21
- "@alanszp/shared-context": "^20.4.2",
19
+ "@alanszp/audit": "^20.4.4",
20
+ "@alanszp/logger": "^20.4.4",
21
+ "@alanszp/shared-context": "^20.4.4",
22
22
  "@types/jest": "^29.5.12",
23
23
  "@types/newrelic": "^9.14.4",
24
24
  "@types/node": "^24.0.0",
@@ -28,14 +28,14 @@
28
28
  "typescript": "^5.9.3"
29
29
  },
30
30
  "dependencies": {
31
- "@alanszp/core": "^20.4.2",
32
- "@alanszp/errors": "^20.4.2",
33
- "@alanszp/validations": "^20.4.2",
31
+ "@alanszp/core": "^20.4.4",
32
+ "@alanszp/errors": "^20.4.4",
33
+ "@alanszp/validations": "^20.4.4",
34
34
  "@paralleldrive/cuid2": "^2.2.2",
35
35
  "bullmq": "^5.76.6",
36
36
  "ioredis": "^5.9.3",
37
37
  "lodash": "^4.17.23",
38
38
  "newrelic": "^13.17.0"
39
39
  },
40
- "gitHead": "aa492dbff96a37aa46e6e9fc36525fc34f75ad63"
40
+ "gitHead": "113b57dc0fa86390b1b9ea9bdd9bc219825544f4"
41
41
  }