背景
公司需要将服务迁移到K8S环境上,由于目前服务输出的格式不符合ES进行采集的日志格式,所有需要将日志输出的格式进行调整为JSON格式,方便ES采集
遇到的坑
之前是直接配置的输出格式的message为"message": %msg"
,但是由于打日志需要打印json内容的日志就没有进行转义导致,整体输出的json格式出错,es采集日志就出问题了
解决方法:调整为"message": %enc{%m}{JSON}"
则支持json内容输出
参考官方文档:https://logging.apache.org/log4j/2.x/manual/layouts.html#PatternLayout
解决方案-正确姿势
log4j log4j2.xml配置示例
<?xml versi