随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题。

Skywalking是一个可观测性分析平台和应用性能管理系统。

提供分布式跟踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

原理图

说几个碰到的坑:

  1. mysql 支持,github下载下来的包默认没有驱动,如果你要用mysql来存储数据,需要把mysql-connector-java-5.1.46.jar 放到oap-libs目录下
  2. 数据自动清除,默认删除90分钟前的数据
  3. 使用 端点面板 中 全局最慢端点追踪 中复制的id 去搜索是搜不到的,必须要加1
  4. 时区必须保持一致:Ubuntu18.04 设置时区.必须要用
  5. 不能使用域名,只能使用IP(碰到连接异常或者agent注册不上可以试试)
timedatectl set-timezone "Asia/Shanghai"

docker 中设置时区可以用

    environment:
- TZ=Asia/Shanghai

主界面

提供全局视图,主要展示了所有被监控服务的总体信息

具体有:

全局热图

提供每分钟响应时间的统计数据

全局响应百分比

(大于) 过去 10 秒内最慢的 x% 的请求的平均延迟,其中 x 是数字与 100 之差。例如,p99 1.403 表示过去 10 秒内最慢的 1% 请求的平均延迟为 1.403 秒。

(ps:这句话很拗口)

全局概况

全局最大吞吐量

每个服务每分钟调用次数

全局最慢端点

服务面板

主要提供当前选中服务的基础信息

全局概况

服务平均响应时间

服务平均吞吐量

该服务每分钟调用次数

服务平均可用性

通过请求成功与失败次数来计算(来源:http://blog.itpub.net/31562043/viewspace-2305574/)

全局响应百分比

过去 10 秒内最慢的 x% 的请求的平均延迟,其中 x 是数字与 100 之差。例如,p99 1.403 表示过去 10 秒内最慢的 1% 请求的平均延迟为 1.403 秒。

服务响应百分比

过去 10 秒内最慢的 x% 的请求的平均延迟,其中 x 是数字与 100 之差。例如,p99 1.403 表示过去 10 秒内最慢的 1% 请求的平均延迟为 1.403 秒。

服务最慢端点

该服务下响应最慢的端点

运行中的实例

端点面板

主要提供当前选中端点的基础信息

全局概况

端点平均响应时间

端点平均吞吐量

该端点每分钟调用次数

端点平均可用性

通过请求成功与失败次数来计算(来源:http://blog.itpub.net/31562043/viewspace-2305574/)

全局响应百分比

过去 10 秒内最慢的 x% 的请求的平均延迟,其中 x 是数字与 100 之差。例如,p99 1.403 表示过去 10 秒内最慢的 1% 请求的平均延迟为 1.403 秒。

端点响应百分比

过去 10 秒内最慢的 x% 的请求的平均延迟,其中 x 是数字与 100 之差。例如,p99 1.403 表示过去 10 秒内最慢的 1% 请求的平均延迟为 1.403 秒。

依赖关系图

最慢端点追踪

默认显示该服务下的最慢的十条记录,可以点击右侧的图标复制追踪ID进行查询详细信息

全局最慢端点

默认显示全局的最慢的十条记录,可以点击右侧的图标复制追踪ID进行查询详细信息

实例面板

实例信息

该选中实例基础信息(语言,系统,主机名,流程号,ip)

实例平均吞吐量

该实例每分钟调用次数

实例平均响应时间

该实例平均响应时间

实例平均可用性

通过请求成功与失败次数来计算(来源:http://blog.itpub.net/31562043/viewspace-2305574/)

jvm 垃圾回收耗时

新生代,老年代

jvm 堆内存

jvm 非堆内存

jvm cpu

clr cpu

clr 堆内存

clr gc

拓扑图面板



接口请求的拓扑图

追踪面板

左上角可以输入追踪ID进行搜索

点击任意节点进行查询详情

spring cloud 服务链路追踪 skywalking 6.1的更多相关文章

  1. Spring Cloud全链路追踪实现(Sleuth+Zipkin+RabbitMQ+ES+Kibana)

    简介 在微服务架构下存在多个服务之间的相互调用,当某个请求变慢或不可用时,我们如何快速定位服务故障点呢?链路追踪的实现就是为了解决这一问题,本文采用Sleuth+Zipkin+RabbitMQ+ES+ ...

  2. Spring Cloud 全链路追踪实现

    简介 在微服务架构下存在多个服务之间的相互调用,当某个请求变慢或不可用时,我们如何快速定位服务故障点呢?链路追踪的实现就是为了解决这一问题,本文采用Sleuth+Zipkin+RabbitMQ+ES+ ...

  3. Spring Cloud Sleuth+ZipKin+ELK服务链路追踪(七)

    序言 sleuth是spring cloud的分布式跟踪工具,主要记录链路调用数据,本身只支持内存存储,在业务量大的场景下,为拉提升系统性能也可通过http传输数据,也可换做rabbit或者kafka ...

  4. 服务链路追踪(Spring Cloud Sleuth)

    sleuth:英 [slu:θ] 美 [sluθ] n.足迹,警犬,侦探vi.做侦探 微服务架构是一个分布式架构,它按业务划分服务单元,一个分布式系统往往有很多个服务单元.由于服务单元数量众多,业务的 ...

  5. spring cloud 入门系列八:使用spring cloud sleuth整合zipkin进行服务链路追踪

    好久没有写博客了,主要是最近有些忙,今天忙里偷闲来一篇. =======我是华丽的分割线========== 微服务架构是一种分布式架构,微服务系统按照业务划分服务单元,一个微服务往往会有很多个服务单 ...

  6. Spring Cloud 分布式链路跟踪 Sleuth + Zipkin + Elasticsearch【Finchley 版】

    随着业务越来越复杂,系统也随之进行各种拆分,特别是随着微服务架构的兴起,看似一个简单的应用,后台可能很多服务在支撑:一个请求可能需要多个服务的调用:当请求迟缓或不可用时,无法得知是哪个微服务引起的,这 ...

  7. Spring Cloud Sleuth链路监控应用(十四)

    https://docs.spring.io/spring-cloud-sleuth/docs/2.2.5.RELEASE/reference/html/ 一.Sleuth介绍   为什么要使用微服务 ...

  8. Spring Cloud 服务端注册与客户端调用

    Spring Cloud 服务端注册与客户端调用 上一篇中,我们已经把Spring Cloud的服务注册中心Eureka搭建起来了,这一章,我们讲解如何将服务注册到Eureka,以及客户端如何调用服务 ...

  9. 【spring cloud】在spring cloud服务中,打包ms-core失败,报错Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.4.RELEASE:repackage (default) on project

    在spring cloud服务中,有一个ms-code项目,只为所有的微服务提供核心依赖和工具类,没有业务意义,作为核心依赖使用.所以没有main方法,没有启动类. 在spring cloud整体打包 ...

随机推荐

  1. Python range() 函数用法及字符串下标

    range() 函数用法 range() 函数可创建一个整数列表,一般用在 for 循环中 range() 函数的表示方法: range(start, stop[, step]) start: 计数从 ...

  2. 2019-11-29-WPF-多个-StylusPlugIn-的事件触发顺序

    原文:2019-11-29-WPF-多个-StylusPlugIn-的事件触发顺序 title author date CreateTime categories WPF 多个 StylusPlugI ...

  3. js获取页面所有搜索条件

    <div class="search">        产品简码:@Html.TextBox("ProCode", "")    ...

  4. angular 监听离开页面执行相关操作

    $scope.$on("$destroy", function() { //...})

  5. Python基础15

    P75. 闭包,需再理解. 装饰器,语法糖

  6. 安装ceres-solver win10遇到Eigen安装的问题

    1.无法打开包括文件: “Eigen/Core”: 去github上下载最新的源码 2.  "The Eigen/Array header does no longer exist in E ...

  7. Linux文本编辑器的常用命令

    Vi文本编辑器 首先介绍命令模式,命令模式是在进入文本编辑器的时候的当前状态:输入模式(插入模式)是在插入文本时候按下的键,比如 大小 i  键,a键.o键:底行模式是在命令模式的状态直接输入冒号 & ...

  8. javascript format 字符串 函数

    函数实现如下: function format(string) { var args = arguments; var pattern = new RegExp("%([1-" + ...

  9. H5离线缓存(基础)学习指南

    离线缓存 application cache 1. 什么是离线缓存: 离线缓存可以将站点的一些文件缓存到本地,它是浏览器自己的一种机制,将需要的文件缓存下来,以便后期即使没有连接网络,被缓存的页面也可 ...

  10. Hyper-v,装XP的时候没有驱动上不了网,装这个集成服务(vmguest.iso )就可以了

    Win10自带的Hyper-v,装XP的时候没有驱动上不了网,装这个集成服务(vmguest.iso )就可以了 安装后无法识别显卡及网卡设备,不能与虚拟网络通讯,设备管理器中显示三个未知设备. 在X ...