From b17b61ad090ed1af93086fdf6eb4426c07dd7a8a Mon Sep 17 00:00:00 2001 From: sp-watson <77974320+sp-watson@users.noreply.github.com> Date: Thu, 26 May 2022 08:37:06 +0100 Subject: [PATCH] Revert "Revert "NN-4019: Add catch wrapper for probation docs (#2147)" (#2162)" This reverts commit 55e73991d7317a9cdc1cc8893c60c118afd9245d. --- backend/index.ts | 9 ++++----- backend/routes.ts | 5 ++++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/backend/index.ts b/backend/index.ts index 95b5cd136..70f4405a4 100644 --- a/backend/index.ts +++ b/backend/index.ts @@ -37,14 +37,13 @@ import homepageController from './controllers/homepage/homepage' import deprecatedUrlPage from './controllers/deprecatedUrlPage' import requestLimiter from './middleware/requestLimiter' -process.on('uncaughtExceptionMonitor', (err, origin) => { - logError('UncuaghtExcMon', err, origin) -}) +// We do not want the server to exit, partly because any log information will be lost. +// Instead, log the error so we can trace, diagnose and fix the problem. process.on('uncaughtException', (err, origin) => { - logError('UncuaghtExc', err, origin) + logError('uncaughtException', err, origin) }) process.on('unhandledRejection', (reason, promise) => { - console.log('Unhandled Rejection at: ', promise, 'reason:', reason) + logError(`unhandledRejection`, {}, `Unhandled Rejection at: ${promise} reason: ${reason}`) }) const app = express() diff --git a/backend/routes.ts b/backend/routes.ts index 340fc899c..490fd2fe4 100644 --- a/backend/routes.ts +++ b/backend/routes.ts @@ -49,6 +49,7 @@ import appointmentConfirmDeletion from './controllers/appointmentConfirmDeletion import appointmentDeleteRecurringBookings from './controllers/appointmentDeleteRecurringBookings' import appointmentDeleted from './controllers/appointmentDeleted' import { cacheFactory } from './utils/singleValueInMemoryCache' +import asyncMiddleware from './middleware/asyncHandler' import whereaboutsRouter from './routes/whereabouts/whereaboutsRouter' @@ -137,7 +138,9 @@ const setup = ({ router.get( '/offenders/:offenderNo/probation-documents', - probationDocumentsFactory(oauthApi, prisonApi, communityApi, systemOauthClient).displayProbationDocumentsPage + asyncMiddleware( + probationDocumentsFactory(oauthApi, prisonApi, communityApi, systemOauthClient).displayProbationDocumentsPage + ) ) router.get( '/offenders/:offenderNo/probation-documents/:documentId/download',