Я запутался в значении подстановки свойств, поиска и параметров макета в Log4j 2. В документации упоминается , что макет JSON поддерживает настраиваемые поля. Однако кажется, что он не поддерживает шаблоны преобразования, такие как% d {ISO8601},% m,% l и тому подобное. однако он поддерживает поиск.
Таким образом, когда я определяю в xml:
<JsonLayout complete="false" compact="false">
<KeyValuePair key="@timestamp" value="%d{ISO8601}" />
<KeyValuePair key="message" value="%message" />
<KeyValuePair key="process.thread.name" value="%tn" />
</JsonLayout >
В качестве вывода я просто получаю строки %d{ISO8601}
, %message
... вместо значения.
Я пытаюсь добиться макета JSON, где я могу включить параметры, аналогичные шаблону макета, где я просто пишу <pattern>%d %p %C{1.} [%t] %m%n</pattern>
, чтобы получить то, что я хочу. Или, в качестве альтернативы, я должен использовать макет Pattern и сшить строку в формате JSON, используя кодировку JSON Pattern Layout %enc{%m}{JSON}
?