SkyWalking为超大规模而生。无论你的微服务是否在服务网格(Service Mesh)架构下,它都可以提供高性能且一致性的监控。
分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker. K8s、Mesos)架构而设计。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。
产生背景
在微服务系统中,随着业务的发展,系统会变得越来越大,那么各个服务之间的调用关系也就变得越来越复杂。一个HTTP请求会调用多个不同的微服务来处理返回最后的结果,在这个调用过程中,可能会因为某个服务出现网络延迟过高或发送错误导致请求失败,这个时候,对请求调用的监控就显得尤为重要了。SpringCloud Sleuth提供了分布式服务链路监控的解决方案。
生产环境调用接口报错了,如何让定位问题?
1、elk+kafka, 只是减少了开发人员搜索日志的成本。
2、生产接口调用链报错的话:需要团队和团队之间沟通
3、分布式服务追踪系统——解决生产环境中调用链报错,减少团队和团队之间的沟通成本。
分布式服务追踪系统:底层包含错误日志(接口异常)了
常用的分布式服务追踪系统
1、sleuth+Zipkin;
2、阿里的鹰眼系统;
3、skywalking
注意:如果调用链过长的话,可能会导致调用超时的问题。
每一次RPC远程调用请求都会生成一个spanid记录每一次rpc请求的信息,还有一个traceid全局唯一id;
Tranceld:全局id,记录整个请求链的关系
Spanid:单元id,记录-次调用关系
Parentld:父的id

SkyWalking 是一个开源的观测平台,用于从服务和云原生等基础设施中收集、分析、聚合以及可视化数据,SkyWalking 提供了一种简便的方式来清晰地观测分布式系统,甚至可以观测横跨不同云的系统,SkyWalking更像是一种现代的应用程序性能监控(Application Performance Monitoring,即APM)工具,专为云原生,基于容器以及分布式系统而设计。
SkyWalking适用的格式。例如在Java中则是做字节码植入,无侵入式的收集,并通过HTTP或者gRPC方式发送数据到平台后端通过Agent技术代理主函数。
参考文档:https://skywalking.apache.org/zh/2020-04-19-skywalking-quick-start/#

1、下载apache-skywalking-apm-8.9.1.tar.gz 安装包
解压之后,文件目录

2、进入到bin目录(直接双击启动startup.bat )
startup.bat 命令内容如下:会启动 SkyWalking OAP 服务和SkyWalking UI 服务

执行startup.bat 命令

3、启动oapService和我们的webappService
4、查看管理界面http://127.0.0.1:8080/
我的电脑做了本地域名映射,所以域名不一样。
