logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:5044</destination>
<queueSize>1048576</queueSize>
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
<providers>
<timestamp>
<timeZone>UTC</timeZone>
</timestamp>
<pattern>
<pattern>
{
"severity":"%level",
"service": "%contextName",
"pid": "${PID:-}",
"thread": "%thread",
"class": "%logger{40}",
"rest": "%message->%ex{full}"
}
</pattern>
</pattern>
</providers>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="LOGSTASH" />
<appender-ref ref="CONSOLE" />
</root>
</configuration>
1: cd config
2:vim springboot-log.conf
3:
input {
tcp {
port => 5044
codec => json_lines
}
}
output {
# stdout {
# codec => rubydebug
# }
elasticsearch {
hosts => ["localhost:9200"]
index => "springboot-logstash-%{+YYYY.MM.dd}"
}
}
4:rm -rf .lock
5:lsof -i:5044
6: kill -9 pid
7:bin/logstash -f config/springboot-log.conf
8:运行springboot项目,打印日志。
8:logstash获得日志