2.springboot项目整合elk日志收集

1 依赖文件添加

        <dependency>
            <groupId>net.logstash.logback</groupId>
            <artifactId>logstash-logback-encoder</artifactId>
            <version>5.1</version>
        </dependency>

2 修改logback.xml文件

 	<springProperty scope="context" name="appName" source="spring.application.name" defaultValue="no_application_name"/>
    <appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <param name="Encoding" value="UTF-8"/>
        <destination>192.168.0.133:5044</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" >
            <customFields>{"appName":"${appName}"}</customFields>
        </encoder>
    </appender>

    <!-- 日志输出级别 -->
    <root level="INFO">
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
        <appender-ref ref="FILE-ERROR"/>
        <appender-ref ref="logstash" />
    </root>

由于在spring配置文件中配置了,spring.application.name,用此名字当作索引

3 修改docker镜像配置文件

由于sebp/elk中logstash的input的方式默认是filebeat,首先们需要进入elk容器中修改input方式。logstash默认会将/etc/logstash/conf.d/中的配置文件进行整合然后启动
(1)进入docker镜像
docker exec -it bcee23c00898 /bin/bash
(2)进入配置文件目录,编辑文件
cd /etc/logstash/conf.d/
vim 02-beats-input.conf
(3)修改如下:

#input {
#  beats {
#    port => 5044
#    ssl => true
#    ssl_certificate => "/etc/pki/tls/certs/logstash-beats.crt"
#    ssl_key => "/etc/pki/tls/private/logstash-beats.key"
#  }
#}

input {
    tcp {
        port => 5044
        codec => json_lines

    }

}
output{
    elasticsearch {
        hosts => ["localhost:9200"]
        index => "%{[appName]}"
    }

}

之后启动项目之后,日志就被发送到了logstash中了。

4 进入kibana

访问ip:5601进入到kibana中
在这里插入图片描述
直接搜索Pattern或者按照目录点击进去,然后新建索引
在这里插入图片描述
之后可以在discover中查找数据

其他问题
在vi/vim中输入方向键却被被转化为A B C D
1 echo “set nocp” >> ~/.vimrc (千万要注意,是>>, 而不是>, 否则把.vimrc清空了, 丢失了之前的内容)

2 source ~/.vimrc

参考文章:
springcloud微服务日志ELK集中处理
Kibana对数据的可视化
微服务下,使用ELK做日志收集及分析
SpringBoot应用整合ELK实现日志收集
springboot向elk写日志实现过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值