feat: implement meter event processing with queue for Stripe billing

This commit is contained in:
Dries Augustyns
2026-04-20 21:30:52 +02:00
parent 4322de929a
commit e048fc1570
5 changed files with 118 additions and 75 deletions
+6
View File
@@ -15,6 +15,7 @@ import {createCampaignWorker} from './campaign-processor.js';
import {createDomainVerificationWorker} from './domain-verification-processor.js';
import {createEmailWorker} from './email-processor.js';
import {createImportWorker} from './import-processor.js';
import {createMeterWorker} from './meter-processor.js';
import {createScheduledCampaignWorker} from './scheduled-processor.js';
import {createSegmentCountWorker} from './segment-count-processor.js';
import {createWorkflowWorker} from './workflow-processor-queue.js';
@@ -70,6 +71,11 @@ async function startWorkers() {
workers.push({name: 'api-request-cleanup', worker: apiRequestCleanupWorker});
signale.success('[WORKER] API request cleanup worker started');
// Start meter worker
const meterWorker = createMeterWorker();
workers.push({name: 'meter', worker: meterWorker});
signale.success('[WORKER] Meter worker started');
signale.success('[WORKER] All workers started successfully');
} catch (error) {
signale.error('[WORKER] Failed to start workers:', error);