我想进行单元测试以验证 LogstashEncoder 是否配置正确并生成 JSON 格式的日志 => logstash-logback-encoder 必须注册为依赖项并且必须配置 logback.xml。
尝试这里描述的@Captor http://bloodredsun.com/2014/06/03/checking-logback-based-logging-in-unit-tests/我只能测试消息的内容,但不能测试它的格式。
在我的具体情况下,我正在记录以下信息:LOG.info("my demo log")
生成以下日志输出:
{"@timestamp":"2017-01-15T21:43:41.295+01:00","@version":1,"message":"my demo log message","logger_name":"org.sample.project.Application","thread_name":"main","level":"INFO","level_value":20000,"HOSTNAME":"tee"}
但正如上面所写,loggingEvent.getFormattedMessage()
只返回消息字符串my demo log
。
那么从 LoggingEvent 获取 json 格式的消息有什么技巧呢?
谢谢和最好的问候!