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,参考解决
相关推荐
算法与双吉汉堡1 天前
【短链接项目笔记】Day2 用户注册
java·redis·笔记·后端·spring
佛祖让我来巡山1 天前
接着唠:三级缓存为啥是“刚需”?没有它Spring工厂得“停工”!
spring·三级缓存·spring三级缓存
北漂IT民工_程序员_ZG1 天前
SpringBean生命周期,动态代理
java·spring boot·spring
老华带你飞1 天前
建筑材料管理|基于springboot 建筑材料管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·spring
zhangyifang_0091 天前
Spring中的BeanFactory类
java·后端·spring
R.lin1 天前
Spring AI Alibaba 1.1 正式发布!
java·后端·spring
程序员阿明1 天前
spring security 6的知识点总结
java·后端·spring
running up1 天前
Spring Bean生命周期- BeanDefinition 加载与 BeanFactoryPostProcessor BeanPostProcessor
java·后端·spring
Java水解1 天前
Spring AOP原理深度解析:代理模式、JDK动态代理与CGLIB
后端·spring
running up1 天前
Spring核心深度解析:AOP与事务管理(TX)全指南
java·数据库·spring