码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SkyWalking分布式链路追踪学习


    为什么要用分布式链路追踪

    实际生产中,面对几十个、甚至成百上千个的微服务实例,如果一旦某个实例发生宕机,如果不能快速定位、提交预警,对实际生产造成的损失无疑是巨大的。所以,要对微服务进行监控、预警,对微服务的调用链路进行监控,迅速定位问题

    分布式链路追踪框架

    在这里插入图片描述

    Skywalking分布式链路追踪

    在这里插入图片描述
    SkyWalking下载

    SkyWalking官网

    elasticsearch下载

    SkyWalking在GitHub的仓库

    SkyWalking安装使用 Windows使用教程、Centos 7使用教程

    SkyWalking 搭建及简单使用

    分布式服务调用链路追踪——Skywalking

    apache-skywalking-apm-6.6.0版本适合入门,一般可以直接点击进行启动,不需要进行其他配置,分布式链路追踪跨服务请求对请求工具有一定要求,如果是原生HttpConnection可能无法正常被skywalking追踪,可以将skywalking通过自身的配置注册到微服务注册中心

    skywalking安装

    1.下载skywalking6.6,这个版本适合入门
    在这里插入图片描述

    2.解压apache-skywalking-apm-6.6.0.tar.gz
    修改这个文件夹下的文件webapp.yml文件默认端口,默认为8080
    在这里插入图片描述

    3.改为18120

    server:
      port: 18120
    
    collector:
      path: /graphql
      ribbon:
        ReadTimeout: 10000
        # Point to all backend's restHost:restPort, split by ,
        listOfServers: 127.0.0.1:12800
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    4.返回bin目录,直接点startup.bat启动
    在这里插入图片描述

    注意没有配置MySQL、es等,不能持久化存储
    MySQL数据存储需要将connector-java-5.1.49.jar包放在oap-libs目录下即可

    启动idea部署探针

    只使用springboot项目就行,在启动时配置一下启动参数就可以部署探针,不用专门去打jar包运行,如果是已经打了jar包的,给jar包指定启动参数就行了
    编辑配置
    在这里插入图片描述

    -javaagent:E:\Z00Packages\DevelopTools\Others\apache\skywalking\apache-skywalking-apm-6.6.0\apache-skywalking-apm-bin\agent\skywalking-agent.jar
    -Dskywalking.agent.service_name=service-admin
    -Dskywalking.collector.backend_service=localhost:11800

    -javaagent:用于指定探针路径
    -Dskywalking.agent.service_name:用于重写 agent/config/agent.config 配置文件中的服务名,名称是自定义的
    -Dskywalking.collector.backend_service:用于重写 agent/config/agent.config 配置文件中的服务地址,端口是grpc默认端口11800
    按照这个方法对项目进行部署,然后启动项目,项目的探针就部署好了,这个时候可以去看项目拓扑图

    运行jar方式部署探针

    将上面部署的参数给jvm赋值一下就行了

    jar -jar 参数 jar包

    链路请求追踪截图

    仪表盘
    在这里插入图片描述

    拓扑图
    在这里插入图片描述

    追踪
    在这里插入图片描述

    告警
    在这里插入图片描述

    获取skywalking的traceid

    引入依赖

     
            <dependency>
                <groupId>org.apache.skywalkinggroupId>
                <artifactId>apm-toolkit-traceartifactId>
                <version>6.5.0version>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    使用TraceContext获取traceId

    import org.apache.skywalking.apm.toolkit.trace.TraceContext;
    String traceId = TraceContext.traceId();  
    
    • 1
    • 2

    使请求可以在skywalking可以查询

    ActiveSpan.tag("test", test);
    ActiveSpan.tag("username", username);
    
    • 1
    • 2
  • 相关阅读:
    【Linux入门指北】文件服务器
    CSP-J 2023 入门级 第一轮 阅读程序(2)
    实验五:面向对象编程实验(3)—多态和接口
    资源哟资源网正版模板v1.3
    电子元器件招标采购商城:优化传统采购业务,提速企业数字化升级
    全链路业务追踪落地实践方案
    第六章:跨域和JSONP
    链表反转类算法题
    Pandas 百分比数据排序(自然排序natsort)
    SQL注入绕过安全狗的waf防火墙,这一篇就够了,8k文案超详细
  • 原文地址:https://blog.csdn.net/qq_27577113/article/details/133140325
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号