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,参考解决
相关推荐
武子康4 小时前
Java-80 深入浅出 RPC Dubbo 动态服务降级:从雪崩防护到配置中心秒级生效
java·分布式·后端·spring·微服务·rpc·dubbo
心之语歌8 小时前
Spring AI MCP 客户端
人工智能·spring·github
Edingbrugh.南空8 小时前
Aerospike与Redis深度对比:从架构到性能的全方位解析
java·开发语言·spring
EmpressBoost13 小时前
谷粒商城170缓存序列化报错
java·spring·缓存
fouryears_2341713 小时前
@PathVariable与@RequestParam的区别
java·spring·mvc·springboot
萌新小白的逆袭14 小时前
《Maven 核心基础笔记(第一天)》
java·开发语言·spring
秋千码途14 小时前
小架构step系列26:Spring提供的validator
java·spring·架构
fouryears_2341715 小时前
什么是JSON,如何与Java对象转化
java·spring boot·spring·json
Code季风19 小时前
Spring AOP 与事务管理进阶:传播行为原理与实战指南
java·spring boot·spring
菠萝催学12319 小时前
日志配置Slf4j
java·数据库·spring·tomcat·maven·intellij-idea