springboot输出json日志
# springboot 输出 json 日志
本文讲述 springboot 项目如何打印 json 格式的日志。传统的日志并不是 json 格式, 但是 json 数据方便做各种数据处理,所以我们可能期望将日志输出为 json 格式。
# 1. 引入依赖
// 支持json日志输出
compile 'net.logstash.logback:logstash-logback-encoder:6.2'
# 2. 修改日志配置文件
修改日志配置文件, 如 logging-config-dev.xml
修改 appender 下原有的 encoder 定义,如下:
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
<jsonGeneratorDecorator class="net.logstash.logback.decorate.FeatureJsonGeneratorDecorator"/>
<providers>
<pattern>
<pattern>
{
"date": "%date{yyyy-MM-dd HH:mm:ss}",
"level": "%level",
"msg": "%msg"
}
</pattern>
</pattern>
</providers>
</encoder>
# 3. 查看日志
查询输出的日志格式如下:
{"date":"2020-08-20 10:21:09","level":"DEBUG","msg":"Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@a40aeb9]"}
{"date":"2020-08-20 10:21:09","level":"DEBUG","msg":"Returning JDBC Connection to DataSource"}
{"date":"2020-08-20 10:21:09","level":"INFO","msg":"分页查询企业列表, 完成, pageCompanyDto[PageCompanyDto(id=null, nameLike=null, cityLike=null, userId=null, userCountMin=null, userCountMax=null, noteLike=null, enableStatus=null, pageNo=1, pageSize=10)]"}
提示
目前 msg 属性的取值没有进一步以 json 格式显示, 待日后完善。
上次更新: 2021-03-24 17:35:20