@tryghost/job-manager 0.8.15 → 0.8.16

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 (2) hide show
  1. package/lib/job-manager.js +10 -12
  2. package/package.json +3 -2
@@ -4,6 +4,7 @@ const later = require('@breejs/later');
4
4
  const Bree = require('bree');
5
5
  const pWaitFor = require('p-wait-for');
6
6
  const {UnhandledJobError, IncorrectUsageError} = require('@tryghost/errors');
7
+ const logging = require('@tryghost/logging');
7
8
  const isCronExpression = require('./is-cron-expression');
8
9
  const assembleBreeJob = require('./assemble-bree-job');
9
10
 
@@ -28,11 +29,10 @@ const handler = (error, result) => {
28
29
  class JobManager {
29
30
  /**
30
31
  * @param {Object} options
31
- * @param {Object} [options.logging] - custom logging handler, defaults to console
32
32
  * @param {Function} [options.errorHandler] - custom job error handler
33
33
  * @param {Function} [options.workerMessageHandler] - custom message handler coming from workers
34
34
  */
35
- constructor({logging, errorHandler, workerMessageHandler}) {
35
+ constructor({errorHandler, workerMessageHandler}) {
36
36
  this.queue = fastq(this, worker, 1);
37
37
 
38
38
  this.bree = new Bree({
@@ -43,8 +43,6 @@ class JobManager {
43
43
  errorHandler: errorHandler,
44
44
  workerMessageHandler: workerMessageHandler
45
45
  });
46
-
47
- this.logging = logging;
48
46
  }
49
47
 
50
48
  /**
@@ -60,7 +58,7 @@ class JobManager {
60
58
  */
61
59
  addJob({name, at, job, data, offloaded = true}) {
62
60
  if (offloaded) {
63
- this.logging.info('Adding offloaded job to the queue');
61
+ logging.info('Adding offloaded job to the queue');
64
62
  let schedule;
65
63
 
66
64
  if (!name) {
@@ -86,18 +84,18 @@ class JobManager {
86
84
  });
87
85
  }
88
86
 
89
- this.logging.info(`Scheduling job ${name} at ${at}. Next run on: ${later.schedule(schedule).next()}`);
87
+ logging.info(`Scheduling job ${name} at ${at}. Next run on: ${later.schedule(schedule).next()}`);
90
88
  } else if (at !== undefined) {
91
- this.logging.info(`Scheduling job ${name} at ${at}`);
89
+ logging.info(`Scheduling job ${name} at ${at}`);
92
90
  } else {
93
- this.logging.info(`Scheduling job ${name} to run immediately`);
91
+ logging.info(`Scheduling job ${name} to run immediately`);
94
92
  }
95
93
 
96
94
  const breeJob = assembleBreeJob(at, job, data, name);
97
95
  this.bree.add(breeJob);
98
96
  return this.bree.start(name);
99
97
  } else {
100
- this.logging.info('Adding one off inline job to the queue');
98
+ logging.info('Adding one off inline job to the queue');
101
99
 
102
100
  this.queue.push(async () => {
103
101
  try {
@@ -109,7 +107,7 @@ class JobManager {
109
107
  } catch (err) {
110
108
  // NOTE: each job should be written in a safe way and handle all errors internally
111
109
  // if the error is caught here jobs implementaton should be changed
112
- this.logging.error(new UnhandledJobError({
110
+ logging.error(new UnhandledJobError({
113
111
  context: (typeof job === 'function') ? 'function' : job,
114
112
  err
115
113
  }));
@@ -144,11 +142,11 @@ class JobManager {
144
142
  return;
145
143
  }
146
144
 
147
- this.logging.warn('Waiting for busy job queue');
145
+ logging.warn('Waiting for busy job queue');
148
146
 
149
147
  await pWaitFor(() => this.queue.idle() === true, options);
150
148
 
151
- this.logging.warn('Job queue finished');
149
+ logging.warn('Job queue finished');
152
150
  }
153
151
  }
154
152
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tryghost/job-manager",
3
- "version": "0.8.15",
3
+ "version": "0.8.16",
4
4
  "repository": "https://github.com/TryGhost/Utils/tree/main/packages/job-manager",
5
5
  "author": "Ghost Foundation",
6
6
  "license": "MIT",
@@ -29,10 +29,11 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@breejs/later": "^4.0.2",
32
+ "@tryghost/logging": "^1.0.2",
32
33
  "bree": "^6.2.0",
33
34
  "cron-validate": "^1.4.3",
34
35
  "fastq": "^1.11.0",
35
36
  "p-wait-for": "^3.2.0"
36
37
  },
37
- "gitHead": "cef9c2f09117b0966380653a9c2be7aa409a9f86"
38
+ "gitHead": "0c7da5d146a6004c5c1fe2fc13f1f7c075ed7ed5"
38
39
  }