skywalking搭建

作者: 十毛tenmao | 来源:发表于2021-10-20 23:58 被阅读0次

    skywalking是分布式微服务请求链路跟踪的框架,可以实现无侵入的链路跟踪、统计、拓扑架构绘制等,本文介绍如何快速搭建

    下载&安装

    https://skywalking.apache.org/downloads/

    可以选择下载: https://archive.apache.org/dist/skywalking/8.7.0/apache-skywalking-apm-8.7.0.tar.gz

    Spring Boot接入

    对代码没有任何侵入,连jar包都不需要引入,只需要修改启动命令就可以了

    -javaagent:apache-skywalking-apm-bin-es7/agent/skywalking-agent.jar -Dskywalking.agent.service_name=tenmao-mybatis -Dskywalking.collector.backend_service=localhost:8080
    

    查看接入效果

    http://localhost:8080/

    image.png

    代码中获取traceId

    • 添加依赖
    <dependency>
        <groupId>org.apache.skywalking</groupId>
        <artifactId>apm-toolkit-trace</artifactId>
        <version>8.7.0</version>
        <scope>provided</scope>
    </dependency>
    
    • 获取traceId
    String traceId = TraceContext.traceId();
    

    日志中输出traceId

    • 添加依赖
    <dependency>
        <groupId>org.apache.skywalking</groupId>
        <artifactId>apm-toolkit-logback-1.x</artifactId>
        <version>8.7.0</version>
    </dependency>
    
    • 日志配置
      encoder使用ch.qos.logback.core.encoder.LayoutWrappingEncoder
      layout使用
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoder 不能使用默认的PatternLayoutEncoder -->
        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
             <!-- 使用skywalking的TraceIdPatternLogbackLayout-->
            <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
                <pattern>${commonPattern}</pattern>
            </layout>
            <charset>UTF-8</charset>
        </encoder>
    </appender>
    

    常见错误

    • First received frame was not SETTINGS. Hex dump for first 5 bytes: 485454502f
      • 端口不匹配,可以尝试使用默认端口11800

    相关文章

      网友评论

        本文标题:skywalking搭建

        本文链接:https://www.haomeiwen.com/subject/dwnxaltx.html