This is an automated email from the ASF dual-hosted git repository.

vy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git


The following commit(s) were added to refs/heads/master by this push:
     new 99269ba  LOG4J2-2973 Minor tweaks to previous work.
99269ba is described below

commit 99269ba6ea78ac6225b361b7f4425cef6f31820b
Author: Volkan Yazıcı <[email protected]>
AuthorDate: Wed Feb 3 10:33:40 2021 +0100

    LOG4J2-2973 Minor tweaks to previous work.
---
 ...mplateLayoutAdditionalFieldPropertiesTest.java} |  6 +-
 ...nTemplateLayoutAdditionalFieldTestHelpers.java} | 28 +++++++-
 ... JsonTemplateLayoutAdditionalFieldXmlTest.java} |  7 +-
 ...JsonTemplateLayoutAdditionalFieldYamlTest.java} |  6 +-
 ...eldEnrichedJsonTemplateLayoutLogging.properties | 33 ++++-----
 ...onalFieldEnrichedJsonTemplateLayoutLogging.yaml |  6 +-
 src/changes/changes.xml                            |  4 +-
 .../asciidoc/manual/json-template-layout.vm.adoc   | 84 ++++++++++++++--------
 8 files changed, 112 insertions(+), 62 deletions(-)

diff --git 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestProperties.java
 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
similarity index 88%
rename from 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestProperties.java
rename to 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
index 5c3911e..735a55d 100644
--- 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestProperties.java
+++ 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
@@ -23,12 +23,14 @@ import org.apache.logging.log4j.test.appender.ListAppender;
 import org.junit.jupiter.api.Test;
 
 
@LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.properties")
-class JsonTemplateLayoutAdditionalFieldTestProperties {
+class JsonTemplateLayoutAdditionalFieldPropertiesTest {
 
     @Test
     void test_additional_fields_are_resolved(
             final LoggerContext loggerContext,
             final @Named(value = "List") ListAppender appender) {
-        
JsonTemplateLayoutAdditionalFieldTestHelper.assertAdditionalFields(loggerContext,
 appender);
+        JsonTemplateLayoutAdditionalFieldTestHelpers
+                .assertAdditionalFields(loggerContext, appender);
     }
+
 }
diff --git 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelper.java
 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
similarity index 62%
rename from 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelper.java
rename to 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
index 605cc3a..383206c 100644
--- 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelper.java
+++ 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache license, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the license for the specific language governing permissions and
+ * limitations under the license.
+ */
 package org.apache.logging.log4j.layout.template.json;
 
 import org.apache.logging.log4j.Logger;
@@ -11,13 +27,18 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
-class JsonTemplateLayoutAdditionalFieldTestHelper {
+final class JsonTemplateLayoutAdditionalFieldTestHelpers {
+
+    private JsonTemplateLayoutAdditionalFieldTestHelpers() {}
+
+    static void assertAdditionalFields(
+            final LoggerContext loggerContext,
+            final ListAppender appender) {
 
-    static void assertAdditionalFields(final LoggerContext loggerContext, 
ListAppender appender) {
         // Log an event.
         final Logger logger =
                 loggerContext.getLogger(
-                        JsonTemplateLayoutAdditionalFieldTestHelper.class);
+                        JsonTemplateLayoutAdditionalFieldTestHelpers.class);
         logger.info("trigger");
 
         // Verify that the appender has logged the event.
@@ -44,4 +65,5 @@ class JsonTemplateLayoutAdditionalFieldTestHelper {
                 .containsEntry("listField", Arrays.asList(1, "two"));
 
     }
+
 }
diff --git 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestXML.java
 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
similarity index 88%
rename from 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestXML.java
rename to 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
index d96da36..f9194ee 100644
--- 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestXML.java
+++ 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
@@ -23,11 +23,14 @@ import org.apache.logging.log4j.test.appender.ListAppender;
 import org.junit.jupiter.api.Test;
 
 @LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.xml")
-class JsonTemplateLayoutAdditionalFieldTestXML {
+class JsonTemplateLayoutAdditionalFieldXmlTest {
+
     @Test
     void test_additional_fields_are_resolved(
             final LoggerContext loggerContext,
             final @Named(value = "List") ListAppender appender) {
-        
JsonTemplateLayoutAdditionalFieldTestHelper.assertAdditionalFields(loggerContext,
 appender);
+        JsonTemplateLayoutAdditionalFieldTestHelpers
+                .assertAdditionalFields(loggerContext, appender);
     }
+
 }
diff --git 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestYAML.java
 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
similarity index 88%
rename from 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestYAML.java
rename to 
log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
index 204ead8..feecefb 100644
--- 
a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestYAML.java
+++ 
b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
@@ -23,12 +23,14 @@ import org.apache.logging.log4j.test.appender.ListAppender;
 import org.junit.jupiter.api.Test;
 
 @LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.yaml")
-class JsonTemplateLayoutAdditionalFieldTestYAML {
+class JsonTemplateLayoutAdditionalFieldYamlTest {
 
     @Test
     void test_additional_fields_are_resolved(
             final LoggerContext loggerContext,
             final @Named(value = "List") ListAppender appender) {
-        
JsonTemplateLayoutAdditionalFieldTestHelper.assertAdditionalFields(loggerContext,
 appender);
+        JsonTemplateLayoutAdditionalFieldTestHelpers
+                .assertAdditionalFields(loggerContext, appender);
     }
+
 }
diff --git 
a/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.properties
 
b/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.properties
index 58e65ba..64bde5f 100644
--- 
a/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.properties
+++ 
b/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.properties
@@ -17,24 +17,21 @@ appender.list.name = List
 appender.list.type = List
 appender.list.raw = true
 appender.list.layout.type = JsonTemplateLayout
-appender.list.layout.charset = UTF-8
-appender.list.layout.extra[0].key = stringField
-appender.list.layout.extra[0].value = string
-appender.list.layout.extra[0].type = EventTemplateAdditionalField
-appender.list.layout.extra[0].format = STRING
-appender.list.layout.extra[1].key = numberField
-appender.list.layout.extra[1].value = 1
-appender.list.layout.extra[1].format = JSON
-appender.list.layout.extra[1].type = EventTemplateAdditionalField
-appender.list.layout.extra[2].key = objectField
-appender.list.layout.extra[2].value = {"numberField":1}
-appender.list.layout.extra[2].format = JSON
-appender.list.layout.extra[2].type = EventTemplateAdditionalField
-appender.list.layout.extra[3].key = listField
-appender.list.layout.extra[3].value = [1, "two"]
-appender.list.layout.extra[3].format = JSON
-appender.list.layout.extra[3].type = EventTemplateAdditionalField
+appender.list.layout.eventTemplateAdditionalField[0].type = 
EventTemplateAdditionalField
+appender.list.layout.eventTemplateAdditionalField[0].key = stringField
+appender.list.layout.eventTemplateAdditionalField[0].value = string
+appender.list.layout.eventTemplateAdditionalField[1].type = 
EventTemplateAdditionalField
+appender.list.layout.eventTemplateAdditionalField[1].key = numberField
+appender.list.layout.eventTemplateAdditionalField[1].value = 1
+appender.list.layout.eventTemplateAdditionalField[1].format = JSON
+appender.list.layout.eventTemplateAdditionalField[2].type = 
EventTemplateAdditionalField
+appender.list.layout.eventTemplateAdditionalField[2].key = objectField
+appender.list.layout.eventTemplateAdditionalField[2].value = {"numberField":1}
+appender.list.layout.eventTemplateAdditionalField[2].format = JSON
+appender.list.layout.eventTemplateAdditionalField[3].type = 
EventTemplateAdditionalField
+appender.list.layout.eventTemplateAdditionalField[3].key = listField
+appender.list.layout.eventTemplateAdditionalField[3].value = [1, "two"]
+appender.list.layout.eventTemplateAdditionalField[3].format = JSON
 
 rootLogger.level = info
 rootLogger.appenderRef.stdout.ref = List
-
diff --git 
a/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.yaml
 
b/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.yaml
index 676b3ce..58a2bd9 100644
--- 
a/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.yaml
+++ 
b/log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.yaml
@@ -14,13 +14,13 @@
 # limitations under the License.
 
 Configuration:
-  status: OFF
+  status: "OFF"
   appenders:
     List:
       name: "List"
       raw: "true"
       JsonTemplateLayout:
-        EventTemplateadditionalField:
+        eventTemplateAdditionalField:
           - key: "stringField"
             value: "string"
           - key: "numberField"
@@ -36,4 +36,4 @@ Configuration:
     root:
       level: "trace"
       AppenderRef:
-        ref: List
+        ref: "List"
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 2b33676..8a69cf4 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -31,8 +31,8 @@
          - "remove" - Removed
     -->
     <release version="3.0.0" date="2021-MM-DD" description="GA Release 3.0.0">
-      <action issue="LOG4J2-2973" dev="fricchiuti" typ="fix">
-        Rename EventTemplateAdditionalField#type (conflicting with properties 
file parser) to "format"
+      <action issue="LOG4J2-2973" dev="fricchiuti" type="fix">
+        Rename EventTemplateAdditionalField#type (conflicting with properties 
file parser) to "format".
       </action>
       <action issue="LOG4J2-2999" dev="vy" type="add">
         Replace JsonTemplateLayout resolver configurations table in docs with 
sections.
diff --git a/src/site/asciidoc/manual/json-template-layout.vm.adoc 
b/src/site/asciidoc/manual/json-template-layout.vm.adoc
index d3f700c..4575259 100644
--- a/src/site/asciidoc/manual/json-template-layout.vm.adoc
+++ b/src/site/asciidoc/manual/json-template-layout.vm.adoc
@@ -242,11 +242,12 @@ appender.console.json.eventTemplateUri = 
classpath:LogstashJsonEventLayoutV1.jso
 [#additional-event-template-fields]
 === Additonal event template fields
 
-Additional event template field is a convenient short-cut to add custom fields
-to a template or override the fields of a template. Following configuration
-overrides the `host` field of the `GelfLayout.json` template and adds two new
-custom fields:
+Additional event template fields are a convenient short-cut to add custom 
fields
+to a template or override the existing ones. Following configuration overrides
+the `host` field of the `GelfLayout.json` template and adds two new custom
+fields:
 
+.XML configuration with additional fields
 [source,xml]
 ----
 <JsonTemplateLayout eventTemplateUri="classpath:GelfLayout.json">
@@ -257,40 +258,63 @@ custom fields:
 ----
 
 The default `format` for the added new fields are `String`.
-One can also pass JSON literals into additional fields:
+One can also provide JSON-formatted additional fields:
 
+.XML-formatted configuration with JSON-formatted additional fields
 [source,xml]
 ----
-<EventTemplateAdditionalField
-     key="marker"
-     format="JSON"
-     value='{"$resolver": "marker", "field": "name"}'/>
-<EventTemplateAdditionalField
-     key="aNumber"
-     format="JSON"
-     value="1"/>
-<EventTemplateAdditionalField
-     key="aList"
-     format="JSON"
-     value='[1,2,"string"]'/>
+<JsonTemplateLayout eventTemplateUri="classpath:GelfLayout.json">
+  <EventTemplateAdditionalField
+       key="marker"
+       format="JSON"
+       value='{"$resolver": "marker", "field": "name"}'/>
+  <EventTemplateAdditionalField
+       key="aNumber"
+       format="JSON"
+       value="1"/>
+  <EventTemplateAdditionalField
+       key="aList"
+       format="JSON"
+       value='[1, 2, "three"]'/>
+</JsonTemplateLayout>
 ----
 
-When using a configuration file with a `.properties` extension, additional 
fields can be added as follows:
+Additional event template fields can also be introduced using properties- and
+YAML-formatted configuration:
 
+.Properties-formatted configuration with JSON-formatted additional fields
 [source, properties]
 ----
-appender.console.layout.extra[0].key = marker
-appender.console.layout.extra[0].value = {"$resolver": "marker", "field": 
"name"}
-appender.console.layout.extra[0].format = JSON
-appender.console.layout.extra[0].type = EventTemplateAdditionalField
-appender.console.layout.extra[1].key = aNumber
-appender.console.layout.extra[1].value = 1
-appender.console.layout.extra[1].format = JSON
-appender.console.layout.extra[1].type = EventTemplateAdditionalField
-appender.console.layout.extra[2].key = aList
-appender.console.layout.extra[2].value = [1,2,"string"]
-appender.console.layout.extra[2].format = JSON
-appender.console.layout.extra[2].type = EventTemplateAdditionalField
+appender.console.layout.type = JsonTemplateLayout
+appender.console.layout.eventTemplateUri = classpath:GelfLayout.json
+appender.console.layout.eventTemplateAdditionalField[0].type = 
EventTemplateAdditionalField
+appender.console.layout.eventTemplateAdditionalField[0].key = marker
+appender.console.layout.eventTemplateAdditionalField[0].value = {"$resolver": 
"marker", "field": "name"}
+appender.console.layout.eventTemplateAdditionalField[0].format = JSON
+appender.console.layout.eventTemplateAdditionalField[1].type = 
EventTemplateAdditionalField
+appender.console.layout.eventTemplateAdditionalField[1].key = aNumber
+appender.console.layout.eventTemplateAdditionalField[1].value = 1
+appender.console.layout.eventTemplateAdditionalField[1].format = JSON
+appender.console.layout.eventTemplateAdditionalField[2].type = 
EventTemplateAdditionalField
+appender.console.layout.eventTemplateAdditionalField[2].key = aList
+appender.console.layout.eventTemplateAdditionalField[2].value = [1, 2, "three"]
+appender.console.layout.eventTemplateAdditionalField[2].format = JSON
+----
+
+.YAML-formatted configuration with JSON-formatted additional fields
+[source,yaml]
+----
+JsonTemplateLayout:
+  eventTemplateAdditionalField:
+    - key: "marker"
+      value: '{"$resolver": "marker", "field": "name"}'
+      format: "JSON"
+    - key: "aNumber"
+      value: "1"
+      format: "JSON"
+    - key: "aList"
+      value: '[1, 2, "three"]'
+      format: "JSON"
 ----
 
 [#recycling-strategy]

Reply via email to