From 8ada1725bfee9087aca5f633fd0799b44bcb101a Mon Sep 17 00:00:00 2001 From: MeiMei <30769358+mei23@users.noreply.github.com> Date: Thu, 7 Nov 2019 05:41:44 +0900 Subject: 管理画面のジョブキュー一覧の修正 (#5586) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix: inboxのジョブキューが表示されない * ジョブキューで試行回数等を表示するように * DBとオブジェクトストレージのジョブキューが表示されるように --- src/server/api/endpoints/admin/queue/jobs.ts | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'src/server/api/endpoints/admin/queue/jobs.ts') diff --git a/src/server/api/endpoints/admin/queue/jobs.ts b/src/server/api/endpoints/admin/queue/jobs.ts index 4e47775692..0d23ca3e57 100644 --- a/src/server/api/endpoints/admin/queue/jobs.ts +++ b/src/server/api/endpoints/admin/queue/jobs.ts @@ -1,6 +1,6 @@ import $ from 'cafy'; import define from '../../../define'; -import { deliverQueue, inboxQueue } from '../../../../../queue'; +import { deliverQueue, inboxQueue, dbQueue, objectStorageQueue } from '../../../../../queue'; export const meta = { tags: ['admin'], @@ -10,11 +10,11 @@ export const meta = { params: { domain: { - validator: $.str, + validator: $.str.or(['deliver', 'inbox', 'db', 'objectStorage']), }, state: { - validator: $.str, + validator: $.str.or(['active', 'waiting', 'delayed']), }, limit: { @@ -28,13 +28,22 @@ export default define(meta, async (ps) => { const queue = ps.domain === 'deliver' ? deliverQueue : ps.domain === 'inbox' ? inboxQueue : + ps.domain === 'db' ? dbQueue : + ps.domain === 'objectStorage' ? objectStorageQueue : null as never; const jobs = await queue.getJobs([ps.state], 0, ps.limit!); - return jobs.map(job => ({ - id: job.id, - data: job.data, - attempts: job.attemptsMade, - })); + return jobs.map(job => { + const data = job.data; + delete data.content; + delete data.user; + return { + id: job.id, + data, + attempts: job.attemptsMade, + maxAttempts: job.opts ? job.opts.attempts : 0, + timestamp: job.timestamp, + }; + }); }); -- cgit v1.2.3-freya