首页 > 解决方案 > 如何使用 KeyValuePair 将 PatternLayout 转换为 JsonLayout?

问题描述

我在 log4j2.xml 中有这个属性: %d [%t] %-5p %X{requestId} %c - %m%n

并希望以 json 格式使用:key="Date" value="%d"

标签: spring-bootlogginglog4j

解决方案


您将使用日期查找包含一个键/值对

<JsonLayout>
  <KeyValuePair key="Date" value="$${date:yyyy-MM-dd HH:mm:ss}"/>
</JsonLayout>

这将导致对每个事件的日期和时间进行评估。请注意,这比 Log4j 在 LogEvent 中计算和打印时间的方式要慢得多。


推荐阅读