From 31750f16a38e3d21535cfbee04f24cfe7147ffce Mon Sep 17 00:00:00 2001 From: Jez Barnsley Date: Wed, 29 Apr 2026 16:26:07 +0100 Subject: [PATCH] createLogger() as singleton --- src/api/server.js | 4 +--- src/helpers/logging/logger.js | 6 +++++- src/index.js | 4 +--- src/messaging/event.js | 4 +--- src/plugins/auth/index.js | 4 +--- src/plugins/scheduler.test.js | 4 ++-- src/repositories/file-repository.js | 4 +--- src/repositories/save-and-exit-repository.js | 3 +-- src/repositories/submission-repository.js | 4 +--- src/routes/admin.js | 4 +--- src/routes/admin.test.js | 4 ++-- src/routes/files.test.js | 4 ++-- src/routes/form.test.js | 4 ++-- src/routes/health.test.js | 4 ++-- src/server.js | 4 +--- src/services/entitlements-service.js | 3 +-- src/services/entitlements-service.test.js | 2 +- src/services/expiring-save-and-exit.js | 4 +--- src/services/file-service.js | 3 +-- src/services/notify.js | 4 +--- src/services/report.js | 4 +--- src/services/save-and-exit-events.js | 4 +--- src/services/save-and-exit-events.test.js | 4 ++-- src/services/save-and-exit-service.js | 4 +--- src/services/save-and-exit-service.test.js | 4 ++-- src/services/scheduler.js | 4 +--- src/services/scheduler.test.js | 4 ++-- src/services/service-helpers.test.js | 4 ++-- src/services/submission-events.js | 4 +--- src/services/submission-events.test.js | 4 ++-- src/services/submission-service.js | 3 +-- src/services/submission-service.test.js | 4 ++-- src/tasks/receive-save-and-exit-messages.js | 3 +-- src/tasks/receive-save-and-exit-messages.test.js | 12 +++++------- src/tasks/receive-submission-messages.js | 4 +--- src/tasks/receive-submission-messages.test.js | 12 +++++------- 36 files changed, 59 insertions(+), 96 deletions(-) diff --git a/src/api/server.js b/src/api/server.js index e0b21f87..3866cb6a 100644 --- a/src/api/server.js +++ b/src/api/server.js @@ -7,7 +7,7 @@ import { ProxyAgent } from 'proxy-agent' import { config } from '~/src/config/index.js' import { failAction } from '~/src/helpers/fail-action.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { requestTracing } from '~/src/helpers/request-tracing.js' import { prepareDb } from '~/src/mongo.js' import { auth } from '~/src/plugins/auth/index.js' @@ -21,8 +21,6 @@ import { prepareSecureContext } from '~/src/secure-context.js' import { runTask as runSaveAndExitTask } from '~/src/tasks/receive-save-and-exit-messages.js' import { runTask as runSubmissionTask } from '~/src/tasks/receive-submission-messages.js' -const logger = createLogger() - const isProduction = config.get('isProduction') const proxyAgent = new ProxyAgent() diff --git a/src/helpers/logging/logger.js b/src/helpers/logging/logger.js index 7e7e63f3..e71e12f3 100644 --- a/src/helpers/logging/logger.js +++ b/src/helpers/logging/logger.js @@ -5,6 +5,10 @@ import { loggerOptions } from '~/src/helpers/logging/logger-options.js' /** * Create a logger instance. */ -export function createLogger() { +function createPinoLogger() { return pino(loggerOptions) } + +// Singleton logger instance - pino adds 'exit' listeners to process, +// so we reuse a single instance to avoid MaxListenersExceededWarning +export const logger = createPinoLogger() diff --git a/src/index.js b/src/index.js index 0bfa9195..156aa743 100644 --- a/src/index.js +++ b/src/index.js @@ -2,9 +2,7 @@ import { chdir } from 'node:process' import { getErrorMessage } from '@defra/forms-model' -import { createLogger } from '~/src/helpers/logging/logger.js' - -const logger = createLogger() +import { logger } from '~/src/helpers/logging/logger.js' // Move working directory to build output chdir(import.meta.dirname) diff --git a/src/messaging/event.js b/src/messaging/event.js index 1c831781..f3477970 100644 --- a/src/messaging/event.js +++ b/src/messaging/event.js @@ -5,7 +5,7 @@ import { } from '@aws-sdk/client-sqs' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { sqsClient } from '~/src/tasks/sqs.js' export const receiveMessageTimeout = config.get('receiveMessageTimeout') @@ -13,8 +13,6 @@ export const receiveMessageTimeout = config.get('receiveMessageTimeout') const maxNumberOfMessages = config.get('maxNumberOfMessages') const visibilityTimeout = config.get('visibilityTimeout') -const logger = createLogger() - /** * @param {string} dlqName */ diff --git a/src/plugins/auth/index.js b/src/plugins/auth/index.js index 1a7ba581..1e71ca91 100644 --- a/src/plugins/auth/index.js +++ b/src/plugins/auth/index.js @@ -2,7 +2,7 @@ import Boom from '@hapi/boom' import Jwt from '@hapi/jwt' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { getUserScopes } from '~/src/services/entitlements-service.js' const oidcJwksUri = config.get('oidcJwksUri') @@ -30,8 +30,6 @@ const cognitoClientIds = Object.fromEntries( ]) ) -const logger = createLogger() - /** * @satisfies {ServerRegisterPluginObject} */ diff --git a/src/plugins/scheduler.test.js b/src/plugins/scheduler.test.js index 7c779ae4..b9c4b696 100644 --- a/src/plugins/scheduler.test.js +++ b/src/plugins/scheduler.test.js @@ -3,11 +3,11 @@ const mockWarnFn = jest.fn() const mockInfoFn = jest.fn() jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: jest.fn().mockReturnValue({ + logger: { error: mockErrorFn, warn: mockWarnFn, info: mockInfoFn - }) + } })) const mockInitialiseEmailExpiringSoonScheduler = jest.fn() diff --git a/src/repositories/file-repository.js b/src/repositories/file-repository.js index 5a43ee80..c7fd7da2 100644 --- a/src/repositories/file-repository.js +++ b/src/repositories/file-repository.js @@ -1,8 +1,6 @@ -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { FILES_COLLECTION_NAME, db } from '~/src/mongo.js' -const logger = createLogger() - /** * Adds a file status to the database * @param {FormFileUploadStatus} fileStatus - file status diff --git a/src/repositories/save-and-exit-repository.js b/src/repositories/save-and-exit-repository.js index a928359f..e0042d8b 100644 --- a/src/repositories/save-and-exit-repository.js +++ b/src/repositories/save-and-exit-repository.js @@ -5,11 +5,10 @@ import Boom from '@hapi/boom' import { config } from '~/src/config/index.js' import { addDays } from '~/src/helpers/date-helper.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { createTimer } from '~/src/helpers/timer.js' import { SAVE_AND_EXIT_COLLECTION_NAME, db } from '~/src/mongo.js' -const logger = createLogger() const expiryInDays = config.get('saveAndExitExpiryInDays') export const saveAndExitLabel = 'save-and-exit' diff --git a/src/repositories/submission-repository.js b/src/repositories/submission-repository.js index 34752945..ad71c363 100644 --- a/src/repositories/submission-repository.js +++ b/src/repositories/submission-repository.js @@ -1,10 +1,8 @@ import { getErrorMessage } from '@defra/forms-model' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { SUBMISSIONS_COLLECTION_NAME, db } from '~/src/mongo.js' -const logger = createLogger() - /** * Gets submission records based on formId * @param {string} formId - the form id diff --git a/src/routes/admin.js b/src/routes/admin.js index bd6b26f8..56e5946f 100644 --- a/src/routes/admin.js +++ b/src/routes/admin.js @@ -1,7 +1,7 @@ import { Scopes, idSchema } from '@defra/forms-model' import Joi from 'joi' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { deleteDlqMessage, receiveDlqMessages, @@ -24,8 +24,6 @@ import { const OK_RESPONSE = 200 -const logger = createLogger() - export default [ /** * @satisfies {ServerRoute} diff --git a/src/routes/admin.test.js b/src/routes/admin.test.js index abbea521..d8c3cc98 100644 --- a/src/routes/admin.test.js +++ b/src/routes/admin.test.js @@ -22,11 +22,11 @@ jest.mock('~/src/tasks/receive-save-and-exit-messages.js') jest.mock('~/src/tasks/receive-submission-messages.js') jest.mock('~/src/services/submission-service.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) jest.mock('~/src/messaging/event.js') diff --git a/src/routes/files.test.js b/src/routes/files.test.js index 58e84fe5..06ee0d0b 100644 --- a/src/routes/files.test.js +++ b/src/routes/files.test.js @@ -14,11 +14,11 @@ jest.mock('~/src/services/file-service.js') jest.mock('~/src/tasks/receive-save-and-exit-messages.js') jest.mock('~/src/tasks/receive-submission-messages.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('Files route', () => { diff --git a/src/routes/form.test.js b/src/routes/form.test.js index 7a88b575..b7bd89b8 100644 --- a/src/routes/form.test.js +++ b/src/routes/form.test.js @@ -18,11 +18,11 @@ jest.mock('~/src/tasks/receive-submission-messages.js') jest.mock('~/src/services/submission-service.js') jest.mock('~/src/services/report.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('Forms route', () => { diff --git a/src/routes/health.test.js b/src/routes/health.test.js index 4f795416..d06afd08 100644 --- a/src/routes/health.test.js +++ b/src/routes/health.test.js @@ -4,11 +4,11 @@ jest.mock('~/src/mongo.js') jest.mock('~/src/tasks/receive-save-and-exit-messages.js') jest.mock('~/src/tasks/receive-submission-messages.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('Health route', () => { diff --git a/src/server.js b/src/server.js index f7aba040..801ad860 100644 --- a/src/server.js +++ b/src/server.js @@ -2,9 +2,7 @@ import { getErrorMessage } from '@defra/forms-model' import { createServer } from '~/src/api/server.js' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' - -const logger = createLogger() +import { logger } from '~/src/helpers/logging/logger.js' process.on('unhandledRejection', (err) => { logger.error( diff --git a/src/services/entitlements-service.js b/src/services/entitlements-service.js index 85ea3407..1dc3366a 100644 --- a/src/services/entitlements-service.js +++ b/src/services/entitlements-service.js @@ -1,12 +1,11 @@ import Boom from '@hapi/boom' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { getJson } from '~/src/services/httpService.js' const entitlementUrl = config.get('entitlementUrl') const entitlementsEndpoint = new URL('/', entitlementUrl) -const logger = createLogger() /** * Fetches user scopes from the entitlements API diff --git a/src/services/entitlements-service.test.js b/src/services/entitlements-service.test.js index e9358dbe..8de4eed7 100644 --- a/src/services/entitlements-service.test.js +++ b/src/services/entitlements-service.test.js @@ -37,7 +37,7 @@ describe('Entitlements service', () => { } })) jest.doMock('~/src/helpers/logging/logger.js', () => ({ - createLogger: jest.fn().mockReturnValue(mockLogger) + logger: mockLogger })) const fetchModule = await import('~/src/services/httpService.js') diff --git a/src/services/expiring-save-and-exit.js b/src/services/expiring-save-and-exit.js index 7364ab49..abcd44da 100644 --- a/src/services/expiring-save-and-exit.js +++ b/src/services/expiring-save-and-exit.js @@ -2,7 +2,7 @@ import { getErrorMessage } from '@defra/forms-model' import { config } from '~/src/config/index.js' import { requireConfig } from '~/src/config/require-config.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { createTimer } from '~/src/helpers/timer.js' import { findExpiringRecords, @@ -13,8 +13,6 @@ import { import { getFormMetadataById } from '~/src/services/forms-service.js' import { sendNotification } from '~/src/services/notify.js' -const logger = createLogger() - const minimumHoursRemaining = config.get( 'emailUsersExpiringSoonSavedForLaterLink.minimumHoursRemaining' ) diff --git a/src/services/file-service.js b/src/services/file-service.js index 0a09ee24..16f40420 100644 --- a/src/services/file-service.js +++ b/src/services/file-service.js @@ -13,7 +13,7 @@ import contentDisposition from 'content-disposition' import { MongoServerError } from 'mongodb' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { isRetrievalKeyCaseSensitive } from '~/src/helpers/retrieval-key/retrieval-key.js' import { client as mongoClient } from '~/src/mongo.js' import * as repository from '~/src/repositories/file-repository.js' @@ -23,7 +23,6 @@ import { } from '~/src/services/service-helpers.js' import { getS3Client } from '~/src/services/utils.js' -const logger = createLogger() const loadedPrefix = config.get('loadedPrefix') const ALREADY_INGESTED = 11000 diff --git a/src/services/notify.js b/src/services/notify.js index 84b992b1..f8b39d9c 100644 --- a/src/services/notify.js +++ b/src/services/notify.js @@ -2,11 +2,9 @@ import { token } from '@hapi/jwt' import { config } from '~/src/config/index.js' import { requireConfig } from '~/src/config/require-config.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { postJson } from '~/src/services/httpService.js' -const logger = createLogger() - const INT_36 = 36 const INT_37 = 37 const INT_73 = 73 diff --git a/src/services/report.js b/src/services/report.js index 6f6db90d..a54931b8 100644 --- a/src/services/report.js +++ b/src/services/report.js @@ -1,10 +1,8 @@ import { FormMetricType, FormStatus, getErrorMessage } from '@defra/forms-model' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { getSubmissionRecordsForDate } from '~/src/repositories/submission-repository.js' -const logger = createLogger() - /** * @param {Map} map * @param {string} formId diff --git a/src/services/save-and-exit-events.js b/src/services/save-and-exit-events.js index 9316d6bf..2b9334ae 100644 --- a/src/services/save-and-exit-events.js +++ b/src/services/save-and-exit-events.js @@ -5,14 +5,12 @@ import Joi from 'joi' import { config } from '~/src/config/index.js' import { requireConfig } from '~/src/config/require-config.js' import { getBoomErrorMessage } from '~/src/helpers/error-helper.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { deleteMessage } from '~/src/messaging/event.js' import { client } from '~/src/mongo.js' import { createSaveAndExitRecord } from '~/src/repositories/save-and-exit-repository.js' import { sendNotification } from '~/src/services/notify.js' -const logger = createLogger() - const queueUrl = config.get('saveAndExitQueueUrl') const expiryInDays = config.get('saveAndExitExpiryInDays') /** diff --git a/src/services/save-and-exit-events.test.js b/src/services/save-and-exit-events.test.js index d157091a..a1a9b84a 100644 --- a/src/services/save-and-exit-events.test.js +++ b/src/services/save-and-exit-events.test.js @@ -25,11 +25,11 @@ jest.mock('~/src/messaging/event.js') jest.mock('~/src/repositories/save-and-exit-repository.js') jest.mock('~/src/services/notify.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) jest.mock('~/src/mongo.js', () => { diff --git a/src/services/save-and-exit-service.js b/src/services/save-and-exit-service.js index 2e86e038..f42db7ef 100644 --- a/src/services/save-and-exit-service.js +++ b/src/services/save-and-exit-service.js @@ -2,7 +2,7 @@ import { getErrorMessage } from '@defra/forms-model' import Boom from '@hapi/boom' import argon2 from 'argon2' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { deleteSaveAndExitGroup, getLatestSaveAndExitByGroup, @@ -11,8 +11,6 @@ import { resetSaveAndExitRecord } from '~/src/repositories/save-and-exit-repository.js' -const logger = createLogger() - const INVALID_MAGIC_LINK = 'Invalid magic link' const CONSUMED_MAGIC_LINK = 'Magic link has already been consumed' diff --git a/src/services/save-and-exit-service.test.js b/src/services/save-and-exit-service.test.js index 6345f000..7ac0ad9e 100644 --- a/src/services/save-and-exit-service.test.js +++ b/src/services/save-and-exit-service.test.js @@ -18,11 +18,11 @@ import { jest.mock('~/src/repositories/save-and-exit-repository.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('save-and-exit service', () => { diff --git a/src/services/scheduler.js b/src/services/scheduler.js index f419dc62..d73a462b 100644 --- a/src/services/scheduler.js +++ b/src/services/scheduler.js @@ -2,11 +2,9 @@ import { getErrorMessage } from '@defra/forms-model' import cron from 'node-cron' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { processExpiringSaveAndExitRecords } from '~/src/services/expiring-save-and-exit.js' -const logger = createLogger() - /** * Scheduler service for managing periodic tasks */ diff --git a/src/services/scheduler.test.js b/src/services/scheduler.test.js index 5a7c26dd..d7f20a84 100644 --- a/src/services/scheduler.test.js +++ b/src/services/scheduler.test.js @@ -33,12 +33,12 @@ jest.mock('~/src/config/index.js', () => ({ })) jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { debug: jest.fn(), info: jest.fn(), warn: jest.fn(), error: jest.fn() - }) + } })) jest.mock('~/src/services/notify.js') diff --git a/src/services/service-helpers.test.js b/src/services/service-helpers.test.js index 6c2609f4..b2144bbe 100644 --- a/src/services/service-helpers.test.js +++ b/src/services/service-helpers.test.js @@ -13,11 +13,11 @@ import { createCsv, createS3File, getS3Client } from '~/src/services/utils.js' jest.mock('~/src/services/utils.js') jest.mock('~/src/repositories/file-repository.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('Service Helpers', () => { diff --git a/src/services/submission-events.js b/src/services/submission-events.js index 7b1e03ee..9a1b4adb 100644 --- a/src/services/submission-events.js +++ b/src/services/submission-events.js @@ -4,14 +4,12 @@ import Joi from 'joi' import { config } from '~/src/config/index.js' import { addMonths } from '~/src/helpers/date-helper.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { deleteMessage } from '~/src/messaging/event.js' import { client } from '~/src/mongo.js' import { createSubmissionRecord } from '~/src/repositories/submission-repository.js' import { cleanUpSaveAndExit } from '~/src/services/save-and-exit-service.js' -const logger = createLogger() - const queueUrl = config.get('submissionQueueUrl') /** diff --git a/src/services/submission-events.test.js b/src/services/submission-events.test.js index b0b04428..e5dcc8cb 100644 --- a/src/services/submission-events.test.js +++ b/src/services/submission-events.test.js @@ -13,11 +13,11 @@ jest.mock('~/src/messaging/event.js') jest.mock('~/src/repositories/submission-repository.js') jest.mock('~/src/services/notify.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) jest.mock('~/src/mongo.js', () => { diff --git a/src/services/submission-service.js b/src/services/submission-service.js index 0b9bc610..53a7064c 100644 --- a/src/services/submission-service.js +++ b/src/services/submission-service.js @@ -9,7 +9,7 @@ import xlsx from 'xlsx' import { config } from '~/src/config/index.js' import { requireConfig } from '~/src/config/require-config.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { formatPaymentAmount, formatPaymentDate @@ -50,7 +50,6 @@ import { createSubmissionXlsxFile } from '~/src/services/service-helpers.js' * @property {SpreadsheetOptions} [options] - options for the spreadsheet generation */ -const logger = createLogger() /** * * @returns Record diff --git a/src/services/submission-service.test.js b/src/services/submission-service.test.js index 31044d59..97fb6c64 100644 --- a/src/services/submission-service.test.js +++ b/src/services/submission-service.test.js @@ -33,11 +33,11 @@ jest.mock('~/src/services/forms-service.js') jest.mock('~/src/services/service-helpers.js') jest.mock('~/src/services/notify.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: () => ({ + logger: { error: jest.fn(), info: jest.fn(), debug: jest.fn() - }) + } })) describe('Submission service', () => { diff --git a/src/tasks/receive-save-and-exit-messages.js b/src/tasks/receive-save-and-exit-messages.js index d2cb8487..3d927d5e 100644 --- a/src/tasks/receive-save-and-exit-messages.js +++ b/src/tasks/receive-save-and-exit-messages.js @@ -1,7 +1,7 @@ import { getErrorMessage } from '@defra/forms-model' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { receiveMessageTimeout, receiveMessages @@ -9,7 +9,6 @@ import { import { processSaveAndExitEvents } from '~/src/services/save-and-exit-events.js' const queueUrl = config.get('saveAndExitQueueUrl') -const logger = createLogger() /** * @returns {Promise} diff --git a/src/tasks/receive-save-and-exit-messages.test.js b/src/tasks/receive-save-and-exit-messages.test.js index c6bea8c5..8ac32b25 100644 --- a/src/tasks/receive-save-and-exit-messages.test.js +++ b/src/tasks/receive-save-and-exit-messages.test.js @@ -12,13 +12,11 @@ jest.mock('~/src/messaging/event.js') jest.mock('~/src/services/save-and-exit-events.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: jest.fn().mockImplementation(() => { - return { - info: jest.fn(), - error: jest.fn(), - debug: jest.fn() - } - }) + logger: { + info: jest.fn(), + error: jest.fn(), + debug: jest.fn() + } })) describe('receive-messages', () => { diff --git a/src/tasks/receive-submission-messages.js b/src/tasks/receive-submission-messages.js index 8f9547cd..63c527d6 100644 --- a/src/tasks/receive-submission-messages.js +++ b/src/tasks/receive-submission-messages.js @@ -1,7 +1,7 @@ import { getErrorMessage } from '@defra/forms-model' import { config } from '~/src/config/index.js' -import { createLogger } from '~/src/helpers/logging/logger.js' +import { logger } from '~/src/helpers/logging/logger.js' import { receiveMessageTimeout, receiveMessages @@ -10,8 +10,6 @@ import { processSubmissionMessages } from '~/src/services/submission-events.js' const queueUrl = config.get('submissionQueueUrl') -const logger = createLogger() - /** * @returns {Promise} */ diff --git a/src/tasks/receive-submission-messages.test.js b/src/tasks/receive-submission-messages.test.js index 8e9bcede..c747b0d2 100644 --- a/src/tasks/receive-submission-messages.test.js +++ b/src/tasks/receive-submission-messages.test.js @@ -12,13 +12,11 @@ jest.mock('~/src/messaging/event.js') jest.mock('~/src/services/submission-events.js') jest.mock('~/src/helpers/logging/logger.js', () => ({ - createLogger: jest.fn().mockImplementation(() => { - return { - info: jest.fn(), - error: jest.fn(), - debug: jest.fn() - } - }) + logger: { + info: jest.fn(), + error: jest.fn(), + debug: jest.fn() + } })) describe('receive-messages', () => {