diff --git a/apps/worker/src/index.ts b/apps/worker/src/index.ts index c7ecc22c..1223153d 100644 --- a/apps/worker/src/index.ts +++ b/apps/worker/src/index.ts @@ -5,6 +5,7 @@ import { createInitialSalts } from '@openpanel/db'; import { cronQueue, eventsGroupQueues, + gscQueue, importQueue, insightsQueue, miscQueue, @@ -12,9 +13,8 @@ import { sessionsQueue, } from '@openpanel/queue'; import express from 'express'; -import client from 'prom-client'; - import { BullBoardGroupMQAdapter } from 'groupmq'; +import client from 'prom-client'; import sourceMapSupport from 'source-map-support'; import { bootCron } from './boot-cron'; import { bootWorkers } from './boot-workers'; @@ -39,7 +39,7 @@ async function start() { createBullBoard({ queues: [ ...eventsGroupQueues.map( - (queue) => new BullBoardGroupMQAdapter(queue) as any, + (queue) => new BullBoardGroupMQAdapter(queue) as any ), new BullMQAdapter(sessionsQueue), new BullMQAdapter(cronQueue), @@ -47,8 +47,9 @@ async function start() { new BullMQAdapter(miscQueue), new BullMQAdapter(importQueue), new BullMQAdapter(insightsQueue), + new BullMQAdapter(gscQueue), ], - serverAdapter: serverAdapter, + serverAdapter, }); app.use('/', serverAdapter.getRouter()); diff --git a/apps/worker/src/jobs/gsc.ts b/apps/worker/src/jobs/gsc.ts index 6ed9f51a..ccc61ea5 100644 --- a/apps/worker/src/jobs/gsc.ts +++ b/apps/worker/src/jobs/gsc.ts @@ -1,18 +1,20 @@ import { db, syncGscData } from '@openpanel/db'; -import { gscQueue } from '@openpanel/queue'; import type { GscQueuePayload } from '@openpanel/queue'; +import { gscQueue } from '@openpanel/queue'; import type { Job } from 'bullmq'; import { logger } from '../utils/logger'; const BACKFILL_MONTHS = 6; const CHUNK_DAYS = 14; -export async function gscJob(job: Job) { +export function gscJob(job: Job) { switch (job.data.type) { case 'gscProjectSync': return gscProjectSyncJob(job.data.payload.projectId); case 'gscProjectBackfill': return gscProjectBackfillJob(job.data.payload.projectId); + default: + throw new Error('Unknown GSC job type'); } } @@ -59,7 +61,9 @@ async function gscProjectSyncJob(projectId: string) { async function gscProjectBackfillJob(projectId: string) { const conn = await db.gscConnection.findUnique({ where: { projectId } }); if (!conn?.siteUrl) { - logger.warn('GSC backfill skipped: no connection or siteUrl', { projectId }); + logger.warn('GSC backfill skipped: no connection or siteUrl', { + projectId, + }); return; }