spring cloud-skywalking入门指南

skywalking入门指南

全链路追踪的作用?

对请求源头到底层服务的调用链路中间的所有环节进行监控。

Skywalking是什么?

官方网址,https://skywalking.apache.org/

skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于架构(Docker、K8s、Messos)架构而设计。

Skywalking是观察性分析平台和应用性能管理系统,提供分布式追踪、服务网格摇测分析、度量聚合和可视化一体化解决方案。

Skywalking整个构架

整个架构分成四部分:

  • 上部分Agent :负责从应用中,收集链路信息,发送给 SkyWalking OAP 服务器;
  • 下部分 SkyWalking OAP :负责接收Agent发送的Tracing数据信息,然后进行分析(Analysis Core),存储到外部存储器(Storage),最终提供查询(Query)功能;
  • 右部分Storage:Tracing数据存储,目前支持ES、MySQL、Sharding Sphere、TiDB、H2多种存储器,目前采用较多的是ES,主要考虑是SkyWalking开发团队自己的生产环境采用ES为主;
  • 左部分SkyWalking UI:负责提供控制台,查看链路等等;

Skywalking环境搭建部署

  1. 下载skywalking

  2. 搭建skywalking OAP服务

  • 修改配置
    • 先使用默认的H2数据库存储,不用修改cofing/application.yml
    • windown下启动脚本bin/startup.bat,启动成功后会启动两个服务,一个是skywalking-oap-server,一个是skywalking-web-ui
    • 访问UI界面,如果端口改为18080,访问:http://localhost:18080/

微服务接入探针

微服务配置jvm参数,接入skywalking

以订单服务为例,idea启动配置中在jvm参数配置skywalking agent

java 复制代码
  -javaagent:D:\apache\skywalking\apache-skywalking-java-agent-9.3.0\skywalking-agent\skywalking-agent.jar
  -DSW_AGENT_NAME=tlmall-order
  -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=tlmall-skywalking-server:11800

测试,用户下单,在skywalking UI界面可以看到链路信息

常见问题

  1. 没有查看到网关服务的数据
  • 需要将agent包的optional-plugins/apm-spring-cloud-gateway-4.x-plugin-9.3.0.jar拷 贝到agent的plugins目录下,重启agent。
  • 网关服务整个日志构架后不打印traceId,参考解决
相关推荐
树下水月13 小时前
Easyswoole 框架session在高并发/频繁请求下数据丢失问题记录
java·后端·spring
Filwaod13 小时前
互联网大厂Java面试实战:从Spring Boot到AI智能客服,水货程序员李四的翻车现场
spring boot·redis·mysql·spring cloud·微服务·ai·java面试
phltxy14 小时前
Seata 2.2.0:下载、部署与 Nacos + MySQL 集成教程
数据库·mysql·spring cloud·微服务
贫民窟的勇敢爷们14 小时前
Spring Security OAuth2.0 技术详解:分布式系统安全认证的标准方案
java·安全·spring
_Evan_Yao15 小时前
return 的迷途:try-catch-finally 中 return 的诡异顺序与 Spring 事务暗坑
java·后端·spring·mybatis
一只大袋鼠16 小时前
Spring 事务管理三种实现方式
java·数据库·spring·声明式事务
nj01281 天前
Spring 循环依赖详解:三级缓存、早期引用、AOP 代理与懒加载
java·spring·缓存
Maiko Star1 天前
让 AI 开口说话:Spring AI Alibaba 语音合成(TTS)实战
java·人工智能·spring·springai
KNeeg_1 天前
黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐
java·redis·后端·spring·面试·职场和发展·黑马点评
铁皮哥1 天前
【后端/Agent 开发】给你的项目配置一套 .claude/ 工作流:别再裸用 Claude Code 了!
java·windows·python·spring·github·maven·生活