springboot集成分布式链接跟踪SkyWalking探针使用及链接收集实践
目录
本文主要展示与项目的集成以及探测链接的收集与展示
请参阅以下博客文章以获取日志报告和通知
分布式链路追踪进阶实战RPC上报与通知(三)_这里是王老师的微博-程序员的秘密本文主要介绍性能分析、慢速业务代码定位和通知告警
1.链接跟踪-框架项目搭建 1.1 创建项目
在线创建:
创建数据库导入数据(自己安装)
删除表如果``;
表``(
`id` 不为空,
`title` (255) SET NULL '产品标题',
`` (255) SET NULL '细节',
`img` (255) SET NULL '图像',
`` (16,0) NULL '当前价格',
键(`id`)
) = = =;
INTO `` (1, '产品 1', '产品 1 详情', '', 61);
INTO `` (2, '产品 2', '产品 2 详情', '', 88);
INTO `` (3, '产品 3', '产品 3 详情', '', 999);
INTO `` (4, '产品 4', '产品 4 详情', '', 79);
1.2 ++Mysql开发测试接口 1.2.1 添加依赖配置pom.xml
mysql
mysql-connector-java
8.0.26
com.baomidou
mybatis-plus-boot-starter
3.4.1
1.2.2 添加配置。
server.port=8081
#==============================数据库相关配置========================================
spring.datasource.driver-class-name =com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://112.74.xx.xxx:3306/wnn_sky_shop?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username =root
spring.datasource.password =xxxxxxx
#配置mybatis plus打印sql日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
1.2.3 开发接口
商品列表界面 商品详情界面
@SpringBootApplication
@MapperScan("net.wnn.wnnsky.mapper")
public class WnnSkyApplication {
public static void main(String[] args) {
SpringApplication.run(WnnSkyApplication.class, args);
}
}
@RestController
@RequestMapping("/api/product/v1")
public class ProductController {
@Autowired
private ProductService productService;
@RequestMapping("list")
public JsonData list(){
List list = productService.list();
return JsonData.buildSuccess(list);
}
@GetMapping("/detail/{product_id}")
public JsonData detail(@PathVariable("product_id") long productId){
ProductDO productDO = productService.detail(productId);
return JsonData.buildSuccess(productDO);
}
}
@Service
public class ProductServiceImpl implements ProductService {
@Autowired
private ProductMapper productMapper;
@Override
public List list() {
return productMapper.selectList(new QueryWrapper<>());
}
@Override
public ProductDO detail(long productId) {
return productMapper.selectOne(new QueryWrapper().eq("id",productId));
}
}
启动后可以正常访问产品列表
2、 Agent Probe for Link 介绍2.1-Agent的安装与使用
什么是探针:探针代表集成到目标系统中的代理或SDK库,即收集并格式化数据,发送给后端,包括链路跟踪和性能指标
-代理安装与使用
下载链接:
本文使用--apm-8.5.0.tar.gz
-agen目录文件介绍
logs:agent的相关操作日志
-: 插件包
-:插件包(可选插件包采集微博,如果需要生效,需要复制到包中)
:插件包(有效插件包采集微博,支持多帧链接跟踪)
--: 插件包
: 插件包
: 配置文件
-agent.jar:agent代理的jar包(主要是这个!)
- 如何使用代理
优先级:probe -> JVM配置 -> 环境变量配置 -> agent。 (低优先级)
第一个-:/path/to/-agent.jar={}={},{}={}
-:../-agent.jar=agent.=,.=127.0.0.1:11800
第二种:-.[]=[]
-: ../-agent.jar -.agent.= -..=127.0.0.1:11800
agent.: 客户端服务名,apm系统中显示的服务名
.: SW上传的服务地址
2.2 IDEA编辑器配置-Agent链接收集
-:E:\demo\--apm-bin\agent\-agent.jar -.agent.= -..=112.xx.xx.xx0:11800
然后启动服务后,请求两个接口:8081/api//v1//1和:8081/api//v1/list
: 8080/ 可以看到在sky中已经采集到了端点实例信息