首页 > 其他分享 >分布式链路追踪 skywalking 指南

分布式链路追踪 skywalking 指南

时间:2024-08-20 15:30:57浏览次数:11  
标签:服务 端点 Service 实例 JVM 链路 skywalking 当前 分布式

什么是skywalking?

SkyWalking是一个开源的可观察性平台,用于收集,分析,聚合和可视化来自本地或者云服务中的数据。即使在整个云环境中,SkyWalking也能提供一种简便的方法来维护您的分布式系统的清晰视图。它是一个现代的APM(Application Performance Monitor 应用性能监测软件),专门为基于云、容器的分布式系统而设计。

SkyWalking提供了用于在许多不同情况下观察和监视分布式系统的解决方案,并通过agent方式,做到高性能、低损耗、无侵入性,与类似的功能组件如:Zipkin、Pinpoint、CAT相比,skywalking无论是从性能还是社区活跃度方面考虑,都具有一定的优势。

skywalking监控维度

skywalking从三个维度提供可观察项功能,分别是:服务,服务实例,端点

服务:表示一组/一组工作负载,这些工作负载为传入请求提供相同的行为。

服务实例:服务组中的每个单独工作负载都称为实例。像pods在Kubernetes中一样,它不必是单个OS进程,但是,如果您使用agent代理,则实例实际上是一个真正的OS进程。

端点:服务中用于传入请求的路径,例如HTTP URI路径或gRPC服务类+方法签名。

skywalking架构

从逻辑上看,skywalking分为四个部分:探针,平台后端,存储和UI。

  • 探针:收集数据并重新格式化以符合SkyWalking的要求(不同的探针支持不同的来源)。
    • 平台后端:支持数据聚合,分析和流处理,涵盖跟踪,指标和日志。
    • 存储:设备通过开放/可插入的界面存储SkyWalking数据。您可以选择现有的实现,例如ElasticSearch,H2,MySQL,TiDB,InfluxDB,或者实现自己的实现。
    • UI:是一个高度可定制的基于Web的界面,允许SkyWalking最终用户可视化和管理SkyWalking数据

 

UI 界面

登陆后展示所有已接入服务

服务

拓扑图

链路追踪

JVM

单击服务名 admin-center-server -> instance -> JVM

 

点击对应服务即可查看对应服务所有信息

服务实例(Service Instance) :上述的一组工作负载中的每一个工作负载称为一个实例。就像 Kubernetes 中的 pods 一样, 服务实例未必就是操作系统上的一个进程。但当你在使用 Agent 的时候, 一个服务实例实际就是操作系统上的一个真实进程。

端点(Endpoint) :对于特定服务所接收的请求路径, 如 HTTP 的 URI 路径和 gRPC 服务的类名 + 方法签名。

这里,我们可以看到 Spring Boot 应用的一个端点,为 API 接口 /demo/echo

数据库

 

名词解释

提供筛选功能。每块都包含一些指标。若打开时没有数据选择右上角时间范围查看,

Apdex(Application Performance Index,应用性能指数)

服务吞吐量,单位为CPM(calls per minute,每分钟的调用次数)

端点百分位,包括 p99, p95, p90, p75, p50,单位为毫秒

Overview(全局)

Service(服务)

Instance(实例)

Endpoint(端点)

Topology(拓扑)

Trace(追踪)

 

Overview 指标

Service Apdex 数字:当前服务的Apdex分数;

 

Successful Rate(%):当前服务的请求成功率;

Service Load (CPM / PPM)数字:每分钟调用次数(CPM),如果是TCP,表示每分钟的数据包数(PPM);

Service Avg Response Time(ms):当前服务平均响应时间;

Service Apdex 折线图:当前服务一段时间内的Apdex分数;

Service Response Time Percentile(ms):当前服务的百分比响应延时;

Successful Rate(%)折线图:当前服务一段时间内的请求成功率;

Service Load (CPM / PPM)折线图:当前服务一段时间内的每分钟调用次数;

Service Throughput(Bytes):服务吞吐量,只适用于TCP服务;

Message Queue Consuming Count:消息队列消费数;

Message Queue Avg Consuming Latency(ms):消息队列平均延迟时间;

Service Instances Load(CPM / PPM):每个实例每分钟请求数;

Slow Service Instance(ms):每个服务实例平均延时;

Service Instance Successful Rate(%):服务实例的请求成功率。

Instance 指标

Service Instance Load(CPM / PPM):当前实例每分钟调用数;

 

Service Instance Throughput(Bytes):当前实例的吞吐流量;

Service Instance Successful Rate(%):当前实例调用成功比率;

Service Instance Latency(ms):当前实例响应延时;

JVM CPU(Java Service)%:当前实例JVM的CPU占用百分比(相对于主机);

JVM Memory (Java Service)(MB):当前实例的内存占用大小;

共四个指标instance_jvm_memory_heap(堆内存使用)、instance_jvm_memory_heap_max(最大堆内存)、instance_jvm_memory_noheap(直接内存使用)、- instance_jvm_memory_noheap_max(最大直接内存)

 

JVM GC Time(ms):JVM 垃圾回收时间,包含young gc和old gc;

JVM GC Count:JVM垃圾回收次数,包含young gc count和old gc count;

JVM Thread Count(java service):当前实例的线程数;

JVM Thread State Count (Java Service):当前实例的各状态线程数;

JVM Class Count (Java Service):当前实例类的计数。

Endpoint指标

Endpoint Load in Current Service(CPM / PPM):当前服务每个端点的每分钟请求数;

 

Slow Endpoints in Current Service(ms):当前服务每个端点的平均响应时间;

Successful Rate in Current Service(%):当前服务每个端点的请求成功率;

Endpoint Load:当前端点每个时间段的请求量;

Endpoint Avg Response Time(ms):当前端点每个时间段的平均请求响应时间;

Endpoint Response Time Percentile(ms):当前端点每个时间段的响应时间占比;

Endpoint Successful Rate(%):当前端点每个时间段的请求成功率;

 

标签:服务,端点,Service,实例,JVM,链路,skywalking,当前,分布式
From: https://www.cnblogs.com/muyi-yang/p/18369486

相关文章

  • 分布式系列之限流组件
    概述在高并发场景下,请求量瞬间到达,后端服务器即使有缓存、集群主备、分库分表、容错降级等措施,也有可能扛不住这请求量,因此可考虑引入限流组件。限流的目的:防止恶意请求流量或流量超出系统承载。应用场景:网关层校验流量,拦截非法请求,或直接抛弃部分流量(后来的流量,如秒杀系统)实......
  • TCPIP路由技术第一卷第八章OSPF 第六部分-1虚链路
    tcp/ip_ospf案例研究6虚链路/认证/ABRfiltering1.area1virtual-link33.1.1.1(rid)2.gretunnel(ip封装ip的技术)inttunnel0ipadd113.1.1.1255.255.255.0ipospf110area0tunnelsourcelo0tunneldestination33.1.1.13.认证有很多种组合,值需要记住本资粮链......
  • TCPIP路由技术第一卷第四章-3-链路状态协议概述
    链路状态路由协议ospfis-isospfietf(rfc)is-isositcp/iplsa序列号1.线性序列号2.环形序列号3.棒棒糖序列号ospf版本ospfversion1实验环境ospfversion2ipv4ospfversion3ipv6maxage当lsa的年龄到达maxage时,将被从所有数据库中删除.(默认3600秒,1小时)ls......
  • SpringCloud:服务保护和分布式事务详解
    ♥️作者:小宋1021......
  • Kafka--分布式MQ系统、日志系统
    简介:Kafka是由Linkedin(领英)开发的一个分布式、分区多副本、多订阅者、基于Zookeeper协调的分布式日志/MQ系统,于2010年贡献给Apache基金会并成为顶级开源项目。Kafka的特性#1、高吞吐、低延迟kafka最大的特点就是收发消息非常快,kafka每秒可以处理百万级别的消息,最低延迟......
  • 分布式事务
     去佛山工作之前,去千灯湖的那个广发银行开发过Java后台开发的工作。银行的工作内容一般都是严格而且很晦涩。第一次离开租的廉租房子,离工作地点有3个地铁站远的地方合租了房子。大学毕业之后,独立工作和独立生活的能力需要不断尝试和养成。 广州银行的面试比较简单,面试官直......
  • 分布式事务的实现方式和原理
    分布式事务是一种跨多个计算机系统或数据存储系统进行的事务。在分布式系统中,各个组件可能分布在不同的服务器上,这些服务器可能位于不同的地理位置。分布式事务确保了跨多个分布式组件或服务的操作要么全部成功,要么全部失败,从而保持了数据的一致性和完整性。在一个分布式事......
  • 分布式锁的实现方案
    分布式锁是分布式系统中用于确保多个进程或服务在访问共享资源时能够保持互斥,以避免发生数据冲突或不一致性问题的一种同步机制。与传统的锁机制相比,分布式锁是为了解决跨多个计算节点的资源同步问题。在分布式环境下,资源可能被分布在不同的服务器上,这就需要一种跨服务器的锁机......
  • 【分布式系统】之 分布式事务解决方案 Seata
    快速导航一、什么是分布式事务?什么是分布式?什么是事务?二、分布式事务面临的问题?三、Seata是什么?1、简述:2、Seata角色:以购买商品的业务逻辑为例:架构图SEATA的分布式交易解决方案:3、Seata模式:4、Seata支持的配置中心和注册中心一、什么是分布式事务?分布式事务,分开......
  • (计算机网络)数据链路层
    目录一.基本概述二.基本术语三.基本功能 四.CRC差错检验五.点对点协议六.PPP帧格式七.以太网介绍一.基本概述结点:可以相当于一个实体。能够具备接收数据,发送数据的实体物理层不关心介质问题,发送端和接收端数据不一致(数据传输错误)物理层和数据链路层都指的是一......