1. Springboot接入SkyWalking分布式鏈路追蹤

        共 2486字,需瀏覽 5分鐘

         ·

        2021-07-08 15:25

        下載SkyWalking(推薦官網(wǎng))

        skywalking.apache.org/downloads/

        直接下載tar包  www.apache.org/dyn/closer.…

        本地啟動SkyWalking

        1. 解壓縮tar包,進(jìn)入apache-skywalking-apm-bin/bin目錄

        2. windows系統(tǒng)直接運(yùn)行startup.bat(linux系統(tǒng)運(yùn)行startup.sh);出現(xiàn)如下視圖,表示啟動成功

        瀏覽器打開:http://localhost:8080/ 即可訪問SkyWalking的管理界面

        Springboot接入SkyWalking

        以javaagent的方式接入,對代碼無侵入

        java -javaagent:/usr/skywalking/agent/skywalking-agent.jar  -Dskywalking.agent.service_name=your-service-name -Dskywalking.collector.backend_service=127.0.0.1:11800
        復(fù)制代碼

        如果是用idea啟動springboot項目,可在VM參數(shù)區(qū)配置

        啟動項目,看到如下拓?fù)鋱D,即說明你的服務(wù)已被監(jiān)控

        日志打印trace_id

        以logback為例

        • pom文件添加依賴

                <dependency>
        <groupId>org.apache.skywalking</groupId>
        <artifactId>apm-toolkit-logback-1.x</artifactId>
        <version>8.6.0</version>
        </dependency>
        <dependency>
        <groupId>net.logstash.logback</groupId>
        <artifactId>logstash-logback-encoder</artifactId>
        </dependency>
        復(fù)制代碼
        • logback配置文件添加配置

            <!-- 控制臺輸出 -->
        <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
        <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout">
        <Pattern>${logEnv} %d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n
        </Pattern>
        </layout>
        </encoder>
        </appender>

        <!-- 上報給logstash -->
        <appender name="logStash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <destination>${StashUrl}</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
        <provider class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.logstash.TraceIdJsonProvider"/>
        <customFields>{"applicationName":"${AppID}-${logEnv}"}</customFields>
        </encoder>
        </appender>
        復(fù)制代碼
        • idea啟動項目可看到控制臺輸出

        • Kibana上查看日志

        • 通過trace_id查看調(diào)用鏈路

        解決項目使用WebFlux框架導(dǎo)致trace_id無法獲取的問題

        比如使用了Springcloud的gateway組件

        將上圖中\(zhòng)apache-skywalking-apm-bin\agent\optional-plugins下的4個可選插件復(fù)制到 \apache-skywalking-apm-bin\agent\plugins下即可


        作者:l拉不拉米
        鏈接:https://juejin.cn/post/6981640309943828487
        來源:掘金
        著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。



        瀏覽 88
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
          
          

            1. 久久ri资源网 | 韩国gayxxxxgay2 | 黄色免费电影网站 | 同桌上课扣我下面好舒服好爽 | 日本高清老熟妇毛茸茸 |