(cb)
| 297 | } |
| 298 | |
| 299 | checkHealth(cb) { |
| 300 | const promise = this._commandable() |
| 301 | .then((client) => |
| 302 | helpers.callAsync((done) => |
| 303 | client |
| 304 | .multi() |
| 305 | .llen(this.toKey('waiting')) |
| 306 | .llen(this.toKey('active')) |
| 307 | .scard(this.toKey('succeeded')) |
| 308 | .scard(this.toKey('failed')) |
| 309 | .zcard(this.toKey('delayed')) |
| 310 | .get(this.toKey('id')) |
| 311 | .exec(done) |
| 312 | ) |
| 313 | ) |
| 314 | .then((results) => ({ |
| 315 | waiting: results[0], |
| 316 | active: results[1], |
| 317 | succeeded: results[2], |
| 318 | failed: results[3], |
| 319 | delayed: results[4], |
| 320 | newestJob: results[5] ? parseInt(results[5], 10) : 0, |
| 321 | })); |
| 322 | |
| 323 | if (cb) helpers.asCallback(promise, cb); |
| 324 | return promise; |
| 325 | } |
| 326 | |
| 327 | _scanForJobs(key, cursor, size, set, cb) { |
| 328 | const batchCount = Math.min(size, this.settings.redisScanCount); |
no test coverage detected