Springboot整合分布式链路追踪SkyWalking之探针使用和链路采集实

  目录

  1.链路追踪-框架Springboot项目搭建

  1.1 创建一个Springboot项目

  1.2 SpringBoot+MybaitsPlus+Mysql开发测试接口

  1.2.1 添加依赖配置pom.xml

  1.2.2 添加配置 application.properties

  1.2.3 开发接口

  ??2.分布式链路追踪的卧底 Skywalking Agent 探针介绍

  2.1 Skywalking-Agent的安装和使用

  2.2 IDEA编辑器配置Skywalking-Agent链路采集

  本篇主要展示SkyWalking和Springboot项目的整合以及探针链路采集展示

  SkyWalking的日志上报以及WebHook通知见下面这篇博文

  在线创建:https://start.spring.io/

  

  创建数据库导入数据(自己安装Mysql8)

  DROP TABLE IF EXISTS `product`;

  CREATE TABLE `product` (

  `id` bigint NOT NULL,

  `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '商品标题',

  `detail` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '详情',

  `img` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '图片',

  `amount` decimal(16,0) DEFAULT NULL COMMENT '现价',

  PRIMARY KEY (`id`)

  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

  INSERT INTO `product` VALUES (1, '商品1', '商品1详情', 'https://file.wnn021.cn/video/2023/05.jpeg', 61);

  INSERT INTO `product` VALUES (2, '商品2', '商品2详情', 'https://file.wnn021.cn/video/2023/05.jpeg', 88);

  INSERT INTO `product` VALUES (3, '商品3', '商品3详情', 'https://file.wnn021.cn/video/2023/03.jpeg', 999);

  INSERT INTO `product` VALUES (4, '商品4', '商品4详情', 'https://file.wnn021.cn/video/2023/banner.jpeg', 79);

  商品列表接口? ?商品详情接口

  启动后可正常访问商品列表即可

  什么SkyWalking探针:探针表示集成到目标系统中的代理或 SDK 库,即收集并格式化数据, 并发送到、,么么么么后端 包括链路追踪和性能指标

  Skywalking-Agent的安装和使用

  下载skywalking 地址:https://skywalking.apache.org/downloads/

  本篇使用?apache-skywalking-apm-8.5.0.tar.gz

  

  skywalking-agen目录文件的介绍

  logs:skywalking agent的相关运行日志

  bootstrap-plugins:插件包

  optional-plugins:插件包(可供选择的插件包,如果需要生效则需要拷贝到plugins包下)

  plugins:插件包(生效的插件包,支持多个框架链路追踪)

  optional-reporter-plugins:插件包

  activations:插件包

  config: 配置文件

  skywalking-agent.jar:agent代理的jar包(主要是这个!)

  skywalking-agent的使用方式

  优先级:探针-> JVM配置-> 环境变量配置 -> agent.config(优先级低)

  第一种-javaagent:/path/to/skywalking-agent.jar={config1}={value1},{config2}={value2}

  -javaagent:http://www.xbhp.cn/skywalking-agent.jar=agent.service_name=WnnApp,collector.backend_service=127.0.0.1:11800

  第二种:-Dskywalking.[option1]=[value2]

  -javaagent: http://www.xbhp.cn/skywalking-agent.jar -Dskywalking.agent.service_name=WnnApp -Dskywalking.collector.backend_service=127.0.0.1:11800

  agent.service_name:客户端服务名,在apm系统中显示的服务名称

  collector.backend_service:SW上传的服务地址

  -javaagent:E:demoapache-skywalking-apm-binagentskywalking-agent.jar -Dskywalking.agent.service_name=WnnShop -Dskywalking.collector.backend_service=112.xx.xx.xx0:11800

  

  然后启动服务后,请求?http://localhost:8081/api/product/v1/detail/1?和http://localhost:8081/api/product/v1/list?这两个接口

  刷新?http://112.xx.xx.240:8080/? ?可以看到sky中已经收集到了端点实例信息