diff --git a/pom.xml b/pom.xml
index 3f7c4392..65d19981 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,12 +77,17 @@
org.apache.logging.log4j
log4j-api
- 2.17.1
+ 2.19.0
org.apache.logging.log4j
log4j-core
- 2.17.1
+ 2.19.0
+
+
+ org.apache.logging.log4j
+ log4j-layout-template-json
+ 2.19.0
org.junit.jupiter
diff --git a/qqq-backend-core/src/main/resources/log4j2.xml b/qqq-backend-core/src/main/resources/log4j2.xml
index 8f981165..d6f2273c 100644
--- a/qqq-backend-core/src/main/resources/log4j2.xml
+++ b/qqq-backend-core/src/main/resources/log4j2.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/qqq-backend-core/src/main/resources/logTemplate.json b/qqq-backend-core/src/main/resources/logTemplate.json
new file mode 100644
index 00000000..3c79ca46
--- /dev/null
+++ b/qqq-backend-core/src/main/resources/logTemplate.json
@@ -0,0 +1,49 @@
+{
+ "@timestamp": {
+ "$resolver": "timestamp",
+ "pattern": {
+ "format": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
+ "timeZone": "UTC"
+ }
+ },
+ "ecs.version": "1.2.0",
+ "log.level": {
+ "$resolver": "level",
+ "field": "name"
+ },
+ "message": {
+ "$resolver": "message",
+ "stringified": true
+ },
+ "process.thread.name": {
+ "$resolver": "thread",
+ "field": "name"
+ },
+ "log.logger": {
+ "$resolver": "logger",
+ "field": "name"
+ },
+ "labels": {
+ "$resolver": "mdc",
+ "flatten": true,
+ "stringified": true
+ },
+ "tags": {
+ "$resolver": "ndc"
+ },
+ "error.type": {
+ "$resolver": "exception",
+ "field": "className"
+ },
+ "error.message": {
+ "$resolver": "exception",
+ "field": "message"
+ },
+ "error.stack_trace": {
+ "$resolver": "exception",
+ "field": "stackTrace",
+ "stackTrace": {
+ "stringified": true
+ }
+ }
+}