spring-boot项目ELK日志配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_27868061/article/details/81912703

所谓ELK日志指的是:

E:elasticsearch,用于存储日志

L:logstash,用于收集日志,java项目中使用指定的appender将日志发送到logstash,它收集并且整理日志,然后发送到elasticsearch

K:kibana,用于展示日志,从elasticsearch获取日志并展示出来

spring-boot项目中,主要的配置在于logback-spring.xml

<?xml version="1.0" encoding="UTF-8" ?>
<configuration debug="false">
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <!--日志输出采用logstash-->
    <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <!--logstash启动端口-->
        <destination>localhost:9201</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder"/>
    </appender>
    <root level="INFO">
        <!--需要在这里引用logstash这个appender-->
        <appender-ref ref="LOGSTASH"/>
        <appender-ref ref="CONSOLE"/>
    </root>
</configuration>

logstash的配置为,log_to_es.config

#日志输入配置
input {
    tcp {
        port => 9201
        ssl_enable => false
        codec => json {
            charset => "UTF-8"        
        }
    }
}

#日志输出配置
output {
    elasticsearch {
        #es中的索引名称
        index => "logstash-log"
        #es的端口
        hosts => "localhost:9200"
    }
}

kibana中es的配置,kibana.yml

#启动端口
server.port: 5601
server.host: "localhost"
#es
elasticsearch.url: "http://localhost:9200"

猜你喜欢

转载自blog.csdn.net/qq_27868061/article/details/81912703