【Spring Boot】Spring Boot之利用Logstash將日志轉換成以JSON的格式存儲和輸出


一、Logstash的作用

  Logstash是一個完全開源的工具,它可以對日志進行收集、過濾,能非常方便地將日志轉換成以JSON的格式存儲和輸出,並將其存儲供以后使用。

二、整合Logstash的步驟

注意:需要在logback日志框架的基礎上:https://www.cnblogs.com/756623607-zhang/p/9695131.html

1)增加pom依賴

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

2)logback配置文件增加Logstash的appender

    <!-- LOGSTASH -->
    <appender name="FILE-LOGSTASH" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logback.path}/${application.name}-logstash.log</file>
        <append>true</append>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${logback.path}/${application.name}-logstash.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
            <maxHistory>${logback.max-history}</maxHistory>
            <maxFileSize>${logback.max-file-size}</maxFileSize>
        </rollingPolicy>

        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
            <providers>
                <timestamp>
                    <timeZone>UTC</timeZone>
                </timestamp>
                <pattern>
                    <pattern>
                        {
                        "severity": "%level",
                        "service": "${springAppName:-}",
                        "trace": "%X{X-B3-TraceId:-}",
                        "span": "%X{X-B3-SpanId:-}",
                        "exportable": "%X{X-Span-Export:-}",
                        "pid": "${PID:-}",
                        "thread": "%thread",
                        "class": "%logger{40}",
                        "rest": "%message"
                        }
                    </pattern>
                </pattern>
            </providers>
        </encoder>
    </appender>

3)引用該appender

 <root level="${logback.root-level}">
        <appender-ref ref="FILE-LOGSTASH"/>
  </root>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM