springboot集成elk实现日志采集可视化

这篇具有很好参考价值的文章主要介绍了springboot集成elk实现日志采集可视化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、安装ELK

安装ELK组件请参考我这篇博客:windows下安装ELK(踩坑记录)_windows上安装elk教程-CSDN博客

这里不再重复赘述。 

二、编写logstash配置

ELK组件均安装好并成功启动,进入到logstash组件下的config文件夹,创建logstash.conf配置文件

springboot集成elk实现日志采集可视化,spring,elk

logstash.conf的配置如下

input{
   tcp{
       port =>9601
       mode => "server"
       tags => ["tags"]
       host => "localhost"
       codec => json_lines
   }
}

output{
    elasticsearch{
        hosts => ["http://localhost:9200"]
        index => "elk"
    }
   stdout{
        codec => rubydebug
   }
}

三、重新启动ELK组件

1.启动elasticsearch

进入的bin目录下 D:\devSofts\ELK\elasticsearch-8.12.0\bin

双击elasticsearch.bat

springboot集成elk实现日志采集可视化,spring,elk

 2.启动kibana

进入bin目录下 D:\devSofts\ELK\kibana-8.12.0\bin,双击kibana.bat

springboot集成elk实现日志采集可视化,spring,elk

3.启动logstash

cmd进入bin目录

 springboot集成elk实现日志采集可视化,spring,elk

执行命令  logstash.bat -f D:\devSofts\ELK\logstash-8.12.0\config\logstash.conf (后面的路径根据自己的安装位置修改)

springboot集成elk实现日志采集可视化,spring,elk

四、kibana创建elk索引

打开kibana界面

springboot集成elk实现日志采集可视化,spring,elk

点击Management

点击kibana Data Views

springboot集成elk实现日志采集可视化,spring,elk

springboot集成elk实现日志采集可视化,spring,elk

创建elk*  

springboot集成elk实现日志采集可视化,spring,elk

五、创建demo

1.使用idea创建一个springboot项目,记得勾选spring web

springboot集成elk实现日志采集可视化,spring,elk

springboot集成elk实现日志采集可视化,spring,elk

2.引入pom依赖

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>provided</scope>
</dependency>
<!--集成elk相关依赖,往elk平台输出日志-->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.4.12</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.4.12</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-access</artifactId>
    <version>1.3.8</version>
</dependency>
<dependency>
    <groupId>net.logstash.logback</groupId>
    <artifactId>logstash-logback-encoder</artifactId>
    <version>7.4</version>
</dependency>

在resources文件夹下添加 logback.xml,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <!-- 日志存放路径 -->
    <property name="log.path" value="logs/restful" />
   <!-- 日志输出格式 -->
    <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />

    <!-- 控制台输出 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
       <encoder>
          <pattern>${log.pattern}</pattern>
       </encoder>
    </appender>

    <!-- 系统日志输出 -->
    <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/info.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
          <fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
          <!-- 日志最大的历史 60天 -->
          <maxHistory>60</maxHistory>
       </rollingPolicy>
       <encoder>
          <pattern>${log.pattern}</pattern>
       </encoder>
       <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- 过滤的级别 -->
            <level>INFO</level>
            <!-- 匹配时的操作:接收(记录) -->
            <onMatch>ACCEPT</onMatch>
            <!-- 不匹配时的操作:拒绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/error.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
            <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
          <!-- 日志最大的历史 60天 -->
          <maxHistory>60</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- 过滤的级别 -->
            <level>ERROR</level>
          <!-- 匹配时的操作:接收(记录) -->
            <onMatch>ACCEPT</onMatch>
          <!-- 不匹配时的操作:拒绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

    <!--ELK日志配置-->
    <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <destination>localhost:9601</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
            <customFields>{"serviceName":"TestApp"}</customFields>
        </encoder>
    </appender>


    <!-- 系统模块日志级别控制  -->
    <logger name="prj" level="info" />
    <!-- Spring日志级别控制  -->
    <logger name="org.springframework" level="warn" />

    <root level="info">
       <appender-ref ref="console" />
    </root>
    
    <!--系统操作日志-->
    <root level="info">
        <appender-ref ref="file_info" />
        <appender-ref ref="file_error" />
        <appender-ref ref="LOGSTASH" />
    </root>
</configuration>

启动服务后浏览器请求http://localhost:8888/hello 

springboot集成elk实现日志采集可视化,spring,elk

日志收集如下
springboot集成elk实现日志采集可视化,spring,elk文章来源地址https://www.toymoban.com/news/detail-830454.html

到了这里,关于springboot集成elk实现日志采集可视化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 日志与可视化方案:从ELK到EFK,再到ClickHouse

    日志与可视化方案:从ELK到EFK,再到ClickHouse

    ELK是三个开源软件的缩写,分别表示:Elasticsearch,Logstash,Kibana。新增了一个FlieBeat,它是一个轻量级的日志收集处理工具,FlieBeat占用资源少,适用于在各个服务器上搜集日之后,传输给Logstash。 Elasticsearch:开源分布式搜索引擎,提供搜集,分析,缓存数据三大功能,它的

    2024年02月02日
    浏览(6)
  • 实战:ELK环境部署并采集springboot项目日志

    实战:ELK环境部署并采集springboot项目日志

    相信作为一个资深的搬砖人,在处理问题的时候免不了查看应用系统日志,且可以根据这个日志日志精准、快速的解决实际的问题。一般情况下我们的系统日志都放置在包的运行目录下面,非常不便于查看和分类。那么。今天我们就引入ELK的日志处理架构来解决它。 ELK组成及

    2024年02月17日
    浏览(9)
  • springboot集成ELK日志分析平台(windows版)

    springboot集成ELK日志分析平台(windows版)

    1.elk是什么? 在安装ELK之前,建议大家先了解一下elk。 ELK 是elastic公司提供的 一套完整的日志收集以及展示的解决方案 ,是三个产品的首字母缩写,分别是ElasticSearch、Logstash 和 Kibana。 ElasticSearch简称ES ,它是一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化

    2024年02月11日
    浏览(9)
  • Elasticsearch基本操作+集成SpringBoot+ELK日志平台搭建

    Elasticsearch是一种开源的搜索和分析引擎,最初由开源搜索引擎Lucene的作者于2010年创建。它提供了一个可伸缩、高性能的搜索和数据分析平台,可用于多种用途,包括 文本搜索、应用程序性能监控、业务分析、日志聚合 等。 Elasticsearch使用分布式架构,可以处理大量数据并实

    2024年02月06日
    浏览(10)
  • ⼤数据采集和可视化系统实现

    ⼤数据采集和可视化系统实现

    前言 本篇博客用来记录 2022年春季大数据课程结课大作业(大三下,前8周,小组作业) 非常感谢小组同学的付出和积极配合! 了解Kafka、HDFS、MapReduce、Spark、HBase、Hive等组件在大数据体系结构中的角色,并通过本次综合实验对大数据技术在实际应用中的主要流程有初步的认

    2024年02月11日
    浏览(8)
  • SpringBoot利用ELK实现日志收集

    SpringBoot利用ELK实现日志收集

    ELK是Elasticsearch、Logstash、Kibana他们三个组合起来可以搭建日志系统,本文主要记录使 用ELK收集SoringBoot应用产生的日志 Elasticsearch:存储日志信息 Logstash: 日志收集,springboot利用Logstash把日志发送个Logstash,然后Logstash将日志传递 给Elasticsearch。 Kibana:通过web端对日志进行可视化操

    2023年04月08日
    浏览(10)
  • springboot 集成log4j日志,需要自定义json格式内容输出方便ES采集

    公司需要将服务迁移到K8S环境上,由于目前服务输出的格式不符合ES进行采集的日志格式,所有需要将日志输出的格式进行调整为JSON格式,方便ES采集 之前是直接配置的输出格式的message为 \\\"message\\\": %msg\\\" ,但是由于打日志需要打印json内容的日志就没有进行转义导致,整体输出

    2024年02月12日
    浏览(11)
  • ELK 日志采集使用

    ELK 日志采集使用

    Docker 最新版Version 20.10安装_docker最新版本是多少_猿小飞的博客-CSDN博客 安装docker compose_猿小飞的博客-CSDN博客 1.3.1.编写 docker-compose.yml 脚本启动 ELK 服务 忘记了文件在哪里,可以使用下面命令进行查找    1.3.2.创建对应容器挂载目录 针对微服务,我们不同的服务,会专门设置

    2024年02月08日
    浏览(5)
  • filebeat->kafka>elk日志采集

    kafka常用命令 查看所有topic ./kafka-topics.sh --zookeeper 10.1.10.163:2181 --list 查看kafka中指定topic的详情 ./kafka-topics.sh --zookeeper 10.1.10.163:2181 --topic ai_jl_analytic --describe 查看消费者consumer的group列表 ./kafka-consumer-groups.sh --bootstrap-server 10.1.10.163:9092 --list 创建topic ./kafka-topics.sh --create --zooke

    2024年02月10日
    浏览(11)
  • k8s部署elk+filebeat;springCloud集成elk+filebeat+kafka+zipkin实现多个服务日志链路追踪聚合到es

    k8s部署elk+filebeat;springCloud集成elk+filebeat+kafka+zipkin实现多个服务日志链路追踪聚合到es

    如今2023了,大多数javaweb架构都是springboot微服务,一个前端功能请求后台可能是多个不同的服务共同协做完成的。例如用户下单功能,js转发到后台 网关gateway服务 ,然后到 鉴权spring-sercurity服务 ,然后到 业务订单服务 ,然后到 支付服务 ,后续还有发货、客户标签等等服务

    2024年02月16日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包