From 8ce0878dd96489c1d0ddeab90a297c35270abeb4 Mon Sep 17 00:00:00 2001 From: Joe Edwards Date: Fri, 17 Oct 2025 11:54:27 +0100 Subject: [PATCH 1/4] BAU: Update log config to use JsonTemplateLayout --- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ frontend-api/src/main/resources/log4j2.xml | 10 +- gradle/libs.versions.toml | 3 +- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ local-running/src/main/resources/log4j2.xml | 14 +++ 5 files changed, 207 insertions(+), 10 deletions(-) create mode 100644 frontend-api/src/main/resources/LambdaJsonLayout.json create mode 100644 local-running/src/main/resources/LambdaJsonLayout.json create mode 100644 local-running/src/main/resources/log4j2.xml diff --git a/frontend-api/src/main/resources/LambdaJsonLayout.json b/frontend-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/frontend-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/frontend-api/src/main/resources/log4j2.xml b/frontend-api/src/main/resources/log4j2.xml index 3c8f3b39e96..172c6050dff 100644 --- a/frontend-api/src/main/resources/log4j2.xml +++ b/frontend-api/src/main/resources/log4j2.xml @@ -1,15 +1,7 @@ - - - - - - - - - + diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6bb31433534..7f34e3ea2ed 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -49,6 +49,7 @@ jupiterEngine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref jupiterParams = { module = "org.junit.jupiter:junit-jupiter-params", version.ref = "junit" } lettuceCore = "io.lettuce:lettuce-core:6.8.1.RELEASE" libphonenumber = "com.googlecode.libphonenumber:libphonenumber:9.0.15" +log4jJsonTemplate = "org.apache.logging.log4j:log4j-layout-template-json:2.17.1" mockitoCore = "org.mockito:mockito-core:5.20.0" nimbusJwt = "com.nimbusds:nimbus-jose-jwt:10.4.2" nimbusOidc = "com.nimbusds:oauth2-oidc-sdk:10.13.2" @@ -80,7 +81,7 @@ apache = [ awsDynamoDb = ["awsDynamoDbBase", "awsDynamoDbEnhanced"] awsLambda = ["awsLambdaBase", "awsLambdaCore", "awsLambdaEvents", "awsLambdaLog4j"] lettuce = ["apacheCommonsPool", "lettuceCore"] -loggingRuntime = ["awsLambdaLog4j", "sl4jNop"] +loggingRuntime = ["awsLambdaLog4j", "log4jJsonTemplate", "sl4jNop"] nimbus = ["nimbusJwt", "nimbusOidc"] test = [ "awaitility", diff --git a/local-running/src/main/resources/LambdaJsonLayout.json b/local-running/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/local-running/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/local-running/src/main/resources/log4j2.xml b/local-running/src/main/resources/log4j2.xml new file mode 100644 index 00000000000..172c6050dff --- /dev/null +++ b/local-running/src/main/resources/log4j2.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + From 0871d59fd02183f672be7de293d69dc0015dfb14 Mon Sep 17 00:00:00 2001 From: Joe Edwards Date: Fri, 17 Oct 2025 13:51:15 +0100 Subject: [PATCH 2/4] BAU: Update logging config for remaining projects --- .../src/main/resources/LambdaJsonLayout.json | 79 +++++++++++++++ .../src/main/resources/log4j2.xml | 6 +- .../src/main/resources/LambdaJsonLayout.json | 79 +++++++++++++++ .../src/main/resources/log4j2.xml | 5 +- .../src/test/resources/log4j2.xml | 16 ---- .../src/main/resources/LambdaJsonLayout.json | 79 +++++++++++++++ .../src/main/resources/log4j2.xml | 5 +- .../src/main/resources/LambdaJsonLayout.json | 87 +++++++++++++++++ .../src/main/resources/log4j2.xml | 7 +- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ .../src/main/resources/log4j2.xml | 10 +- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ .../src/main/resources/log4j2.xml | 9 +- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ ipv-api/src/main/resources/log4j2.xml | 10 +- .../src/main/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ oidc-api/src/main/resources/log4j2.xml | 10 +- oidc-api/src/test/resources/log4j2.xml | 18 ---- .../src/test/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ .../src/test/resources/log4j2.xml | 4 +- .../src/test/resources/LambdaJsonLayout.json | 95 +++++++++++++++++++ shared/src/test/resources/log4j2.xml | 4 +- .../src/main/resources/LambdaJsonLayout.json | 75 +++++++++++++++ .../src/main/resources/log4j2.xml | 4 +- .../src/main/resources/LambdaJsonLayout.json | 75 +++++++++++++++ utils/src/main/resources/log4j2.xml | 3 +- 26 files changed, 1056 insertions(+), 99 deletions(-) create mode 100644 account-management-api/src/main/resources/LambdaJsonLayout.json create mode 100644 auth-external-api/src/main/resources/LambdaJsonLayout.json delete mode 100644 auth-external-api/src/test/resources/log4j2.xml create mode 100644 client-registry-api/src/main/resources/LambdaJsonLayout.json create mode 100644 delivery-receipts-api/src/main/resources/LambdaJsonLayout.json create mode 100644 doc-checking-app-api/src/main/resources/LambdaJsonLayout.json create mode 100644 interventions-api-stub/src/main/resources/LambdaJsonLayout.json create mode 100644 ipv-api/src/main/resources/LambdaJsonLayout.json create mode 100644 oidc-api/src/main/resources/LambdaJsonLayout.json delete mode 100644 oidc-api/src/test/resources/log4j2.xml create mode 100644 orchestration-shared/src/test/resources/LambdaJsonLayout.json create mode 100644 shared/src/test/resources/LambdaJsonLayout.json create mode 100644 test-services-api/src/main/resources/LambdaJsonLayout.json create mode 100644 utils/src/main/resources/LambdaJsonLayout.json diff --git a/account-management-api/src/main/resources/LambdaJsonLayout.json b/account-management-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..1aa88ca1a6b --- /dev/null +++ b/account-management-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,79 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/account-management-api/src/main/resources/log4j2.xml b/account-management-api/src/main/resources/log4j2.xml index fe6053fdeeb..172c6050dff 100644 --- a/account-management-api/src/main/resources/log4j2.xml +++ b/account-management-api/src/main/resources/log4j2.xml @@ -1,11 +1,7 @@ - - - - - + diff --git a/auth-external-api/src/main/resources/LambdaJsonLayout.json b/auth-external-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..1aa88ca1a6b --- /dev/null +++ b/auth-external-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,79 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/auth-external-api/src/main/resources/log4j2.xml b/auth-external-api/src/main/resources/log4j2.xml index ced947d2dc8..172c6050dff 100644 --- a/auth-external-api/src/main/resources/log4j2.xml +++ b/auth-external-api/src/main/resources/log4j2.xml @@ -1,10 +1,7 @@ - - - - + diff --git a/auth-external-api/src/test/resources/log4j2.xml b/auth-external-api/src/test/resources/log4j2.xml deleted file mode 100644 index 96e8cff5b40..00000000000 --- a/auth-external-api/src/test/resources/log4j2.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/client-registry-api/src/main/resources/LambdaJsonLayout.json b/client-registry-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..1aa88ca1a6b --- /dev/null +++ b/client-registry-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,79 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/client-registry-api/src/main/resources/log4j2.xml b/client-registry-api/src/main/resources/log4j2.xml index ced947d2dc8..172c6050dff 100644 --- a/client-registry-api/src/main/resources/log4j2.xml +++ b/client-registry-api/src/main/resources/log4j2.xml @@ -1,10 +1,7 @@ - - - - + diff --git a/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json b/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d21abe236d5 --- /dev/null +++ b/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,87 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "notification-id": { + "$resolver": "mdc", + "key": "notificationId" + }, + "unique-notification-reference": { + "$resolver": "mdc", + "key": "uniqueNotificationReference" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/delivery-receipts-api/src/main/resources/log4j2.xml b/delivery-receipts-api/src/main/resources/log4j2.xml index 94792eab12a..172c6050dff 100644 --- a/delivery-receipts-api/src/main/resources/log4j2.xml +++ b/delivery-receipts-api/src/main/resources/log4j2.xml @@ -1,12 +1,7 @@ - - - - - - + diff --git a/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json b/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/doc-checking-app-api/src/main/resources/log4j2.xml b/doc-checking-app-api/src/main/resources/log4j2.xml index 3c8f3b39e96..172c6050dff 100644 --- a/doc-checking-app-api/src/main/resources/log4j2.xml +++ b/doc-checking-app-api/src/main/resources/log4j2.xml @@ -1,15 +1,7 @@ - - - - - - - - - + diff --git a/interventions-api-stub/src/main/resources/LambdaJsonLayout.json b/interventions-api-stub/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/interventions-api-stub/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/interventions-api-stub/src/main/resources/log4j2.xml b/interventions-api-stub/src/main/resources/log4j2.xml index 2fd1747a4f6..172c6050dff 100644 --- a/interventions-api-stub/src/main/resources/log4j2.xml +++ b/interventions-api-stub/src/main/resources/log4j2.xml @@ -1,14 +1,7 @@ - - - - - - - - + diff --git a/ipv-api/src/main/resources/LambdaJsonLayout.json b/ipv-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/ipv-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/ipv-api/src/main/resources/log4j2.xml b/ipv-api/src/main/resources/log4j2.xml index 8fd46dc62c1..172c6050dff 100644 --- a/ipv-api/src/main/resources/log4j2.xml +++ b/ipv-api/src/main/resources/log4j2.xml @@ -1,15 +1,7 @@ - - - - - - - - - + diff --git a/oidc-api/src/main/resources/LambdaJsonLayout.json b/oidc-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/oidc-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/oidc-api/src/main/resources/log4j2.xml b/oidc-api/src/main/resources/log4j2.xml index 3c8f3b39e96..172c6050dff 100644 --- a/oidc-api/src/main/resources/log4j2.xml +++ b/oidc-api/src/main/resources/log4j2.xml @@ -1,15 +1,7 @@ - - - - - - - - - + diff --git a/oidc-api/src/test/resources/log4j2.xml b/oidc-api/src/test/resources/log4j2.xml deleted file mode 100644 index 91d85fe187c..00000000000 --- a/oidc-api/src/test/resources/log4j2.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/orchestration-shared/src/test/resources/LambdaJsonLayout.json b/orchestration-shared/src/test/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/orchestration-shared/src/test/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/orchestration-shared/src/test/resources/log4j2.xml b/orchestration-shared/src/test/resources/log4j2.xml index 96e8cff5b40..172c6050dff 100644 --- a/orchestration-shared/src/test/resources/log4j2.xml +++ b/orchestration-shared/src/test/resources/log4j2.xml @@ -1,9 +1,7 @@ - - - + diff --git a/shared/src/test/resources/LambdaJsonLayout.json b/shared/src/test/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..d525ead2cd2 --- /dev/null +++ b/shared/src/test/resources/LambdaJsonLayout.json @@ -0,0 +1,95 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "session-id": { + "$resolver": "mdc", + "key": "sessionId" + }, + "persistent-session-id": { + "$resolver": "mdc", + "key": "persistentSessionId" + }, + "client-session-id": { + "$resolver": "mdc", + "key": "clientSessionId" + }, + "govuk_signin_journey_id": { + "$resolver": "mdc", + "key": "govukSigninJourneyId" + }, + "client-id": { + "$resolver": "mdc", + "key": "clientId" + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/shared/src/test/resources/log4j2.xml b/shared/src/test/resources/log4j2.xml index 96e8cff5b40..172c6050dff 100644 --- a/shared/src/test/resources/log4j2.xml +++ b/shared/src/test/resources/log4j2.xml @@ -1,9 +1,7 @@ - - - + diff --git a/test-services-api/src/main/resources/LambdaJsonLayout.json b/test-services-api/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..eb8f1e6bc71 --- /dev/null +++ b/test-services-api/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,75 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/test-services-api/src/main/resources/log4j2.xml b/test-services-api/src/main/resources/log4j2.xml index 96e8cff5b40..172c6050dff 100644 --- a/test-services-api/src/main/resources/log4j2.xml +++ b/test-services-api/src/main/resources/log4j2.xml @@ -1,9 +1,7 @@ - - - + diff --git a/utils/src/main/resources/LambdaJsonLayout.json b/utils/src/main/resources/LambdaJsonLayout.json new file mode 100644 index 00000000000..eb8f1e6bc71 --- /dev/null +++ b/utils/src/main/resources/LambdaJsonLayout.json @@ -0,0 +1,75 @@ +{ + "instant": { + "epochSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs", + "rounded": true + } + }, + "nanoOfSecond": { + "$resolver": "timestamp", + "epoch": { + "unit": "secs.nanos" + } + } + }, + "level": { + "$resolver": "level", + "field": "name" + }, + "loggerName": { + "$resolver": "logger", + "field": "name" + }, + "message": { + "$resolver": "message" + }, + "thrown": { + "message": { + "$resolver": "exception", + "field": "message" + }, + "name": { + "$resolver": "exception", + "field": "className" + }, + "extendedStackTrace": { + "$resolver": "exception", + "field": "stackTrace" + } + }, + "contextStack": { + "$resolver": "ndc" + }, + "loggerFqcn": { + "$resolver": "logger", + "field": "fqcn" + }, + "source": { + "class": { + "$resolver": "source", + "field": "className" + }, + "method": { + "$resolver": "source", + "field": "methodName" + }, + "file": { + "$resolver": "source", + "field": "fileName" + }, + "line": { + "$resolver": "source", + "field": "lineNumber" + } + }, + "aws-request-id": { + "$resolver": "mdc", + "key": "awsRequestId" + }, + "trace-id": { + "$resolver": "mdc", + "key": "traceId" + } +} diff --git a/utils/src/main/resources/log4j2.xml b/utils/src/main/resources/log4j2.xml index 3a7a80364e2..172c6050dff 100644 --- a/utils/src/main/resources/log4j2.xml +++ b/utils/src/main/resources/log4j2.xml @@ -1,8 +1,7 @@ - - + From 8c72ed4c21010337b43f292afaccdd0a957bbab2 Mon Sep 17 00:00:00 2001 From: Joe Edwards Date: Fri, 17 Oct 2025 14:00:58 +0100 Subject: [PATCH 3/4] BAU: Remove logger fqcn --- .../src/main/resources/LambdaJsonLayout.json | 4 ---- auth-external-api/src/main/resources/LambdaJsonLayout.json | 4 ---- client-registry-api/src/main/resources/LambdaJsonLayout.json | 4 ---- .../src/main/resources/LambdaJsonLayout.json | 4 ---- doc-checking-app-api/src/main/resources/LambdaJsonLayout.json | 4 ---- frontend-api/src/main/resources/LambdaJsonLayout.json | 4 ---- .../src/main/resources/LambdaJsonLayout.json | 4 ---- ipv-api/src/main/resources/LambdaJsonLayout.json | 4 ---- local-running/src/main/resources/LambdaJsonLayout.json | 4 ---- oidc-api/src/main/resources/LambdaJsonLayout.json | 4 ---- orchestration-shared/src/test/resources/LambdaJsonLayout.json | 4 ---- shared/src/test/resources/LambdaJsonLayout.json | 4 ---- test-services-api/src/main/resources/LambdaJsonLayout.json | 4 ---- utils/src/main/resources/LambdaJsonLayout.json | 4 ---- 14 files changed, 56 deletions(-) diff --git a/account-management-api/src/main/resources/LambdaJsonLayout.json b/account-management-api/src/main/resources/LambdaJsonLayout.json index 1aa88ca1a6b..3e9740c2aa3 100644 --- a/account-management-api/src/main/resources/LambdaJsonLayout.json +++ b/account-management-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/auth-external-api/src/main/resources/LambdaJsonLayout.json b/auth-external-api/src/main/resources/LambdaJsonLayout.json index 1aa88ca1a6b..3e9740c2aa3 100644 --- a/auth-external-api/src/main/resources/LambdaJsonLayout.json +++ b/auth-external-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/client-registry-api/src/main/resources/LambdaJsonLayout.json b/client-registry-api/src/main/resources/LambdaJsonLayout.json index 1aa88ca1a6b..3e9740c2aa3 100644 --- a/client-registry-api/src/main/resources/LambdaJsonLayout.json +++ b/client-registry-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json b/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json index d21abe236d5..0b19f986508 100644 --- a/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json +++ b/delivery-receipts-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json b/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json +++ b/doc-checking-app-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/frontend-api/src/main/resources/LambdaJsonLayout.json b/frontend-api/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/frontend-api/src/main/resources/LambdaJsonLayout.json +++ b/frontend-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/interventions-api-stub/src/main/resources/LambdaJsonLayout.json b/interventions-api-stub/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/interventions-api-stub/src/main/resources/LambdaJsonLayout.json +++ b/interventions-api-stub/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/ipv-api/src/main/resources/LambdaJsonLayout.json b/ipv-api/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/ipv-api/src/main/resources/LambdaJsonLayout.json +++ b/ipv-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/local-running/src/main/resources/LambdaJsonLayout.json b/local-running/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/local-running/src/main/resources/LambdaJsonLayout.json +++ b/local-running/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/oidc-api/src/main/resources/LambdaJsonLayout.json b/oidc-api/src/main/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/oidc-api/src/main/resources/LambdaJsonLayout.json +++ b/oidc-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/orchestration-shared/src/test/resources/LambdaJsonLayout.json b/orchestration-shared/src/test/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/orchestration-shared/src/test/resources/LambdaJsonLayout.json +++ b/orchestration-shared/src/test/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/shared/src/test/resources/LambdaJsonLayout.json b/shared/src/test/resources/LambdaJsonLayout.json index d525ead2cd2..5341a941a2f 100644 --- a/shared/src/test/resources/LambdaJsonLayout.json +++ b/shared/src/test/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/test-services-api/src/main/resources/LambdaJsonLayout.json b/test-services-api/src/main/resources/LambdaJsonLayout.json index eb8f1e6bc71..e4bc66df292 100644 --- a/test-services-api/src/main/resources/LambdaJsonLayout.json +++ b/test-services-api/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", diff --git a/utils/src/main/resources/LambdaJsonLayout.json b/utils/src/main/resources/LambdaJsonLayout.json index eb8f1e6bc71..e4bc66df292 100644 --- a/utils/src/main/resources/LambdaJsonLayout.json +++ b/utils/src/main/resources/LambdaJsonLayout.json @@ -42,10 +42,6 @@ "contextStack": { "$resolver": "ndc" }, - "loggerFqcn": { - "$resolver": "logger", - "field": "fqcn" - }, "source": { "class": { "$resolver": "source", From 892c67efb8050234d8e4ad02ba5930da82748dd3 Mon Sep 17 00:00:00 2001 From: Joe Edwards Date: Fri, 17 Oct 2025 14:04:43 +0100 Subject: [PATCH 4/4] BAU: Dont cfn-lint json --- .pre-commit-config.yaml | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 50a37157375..27c5fd1520b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -27,19 +27,10 @@ repos: docker-compose.*|\ .pre-commit-config.yaml|\ orchestration-canary-alarms.template.yaml|\ - .*.approved.json|\ checkov-policies.*|\ .terraform-docs.yml|\ - package.json|\ - deprecation-config.json|\ - http-client.env.json|\ - package-lock.json|\ - .*provider.json|\ - quality-gate.manifest.json|\ - account-management-api/api-contract(/.*)?|\ - babel.config.json|\ - jest.config.json$" - files: ^.*\.(json|yml|yaml)$ + account-management-api/api-contract(/.*)?$" + files: ^.*\.(yml|yaml)$ - repo: https://github.com/govuk-one-login/pre-commit-hooks.git rev: 0.0.1