微服务组件—-SpringCloudAlibaba链路追踪skywalking详解

skywalking是什么

【1】skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。SkyWalking 是观察性分析平台和应用性能管理系统,提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

【2】主要流程为 采集数据——》传输数据——》存储数据——》分析数据——》监控报警 。

Skywalking整体架构

【1】图示:

【2】整个架构分成四部分:

1.上部分Agent :负责从应用中,收集链路信息,发送给 SkyWalking OAP 服务器;

2.下部分 SkyWalking OAP :负责接收Agent发送的Tracing数据信息,然后进行分析(Analysis Core),存储到外部存储器(Storage),最终提供查询(Query)功能;

3.右部分Storage:Tracing数据存储,目前支持ES、MySQL、Sharding Sphere、TiDB、H2多种存储器,目前采用较多的是ES,主要考虑是SkyWalking开发团队自己的生产环境采用ES为主;

4.左部分SkyWalking UI:负责提供控制台,查看链路等等;

【1】服务(Service) :表示对请求提供相同行为的一系列或一组工作负载,在使用Agent时,可以定义服务的名字;

【2】服务实例(Service Instance) :上述的一组工作负载中的每一个工作负载称为一个实例, 一个服务实例实际就是操作系统上的一个真实进程;

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

SkyWalking的简单使用

【1】通过jar包方式接入

1)编辑startup.sh脚本启动

2)java命令启动

3)在IDEA中使用Skywalking

【2】自定义SkyWalking链路追踪【 希望对项目中的业务方法,实现链路追踪,方便我们排查问题

1)引入依赖

2)在业务方法中可以TraceContext获取到traceId

3)注解@Trace将方法加入追踪链路

4)注解@Tags或@Tag为追踪链路增加其他额外的信息,比如记录参数和返回信息。实现方式:在方法上增加@Tag或者@Tags,示例:

SkyWalking的数据持久化

【1】基于mysql持久化

1)修改config目录下的application.yml

2)添加mysql数据驱动包到oap-libs目录下【注意:需要添加mysql数据驱动包,因为在lib目录下是没有mysql数据驱动包的,所以修改完配置启动是会报错,启动失败的。】

3)启动Skywalking【查看swtest数据库,可以看到生成了很多表,那么就代表成功了】

【2】基于elasticsearch持久化

1)修改config目录下的application.yml

2)启动Skywalking服务

启动时会向elasticsearch中创建大量的index索引用于持久化数据,启动应用程序,查看追踪数据是否已经持久化到elasticsearch的索引中,然后重启skywalking,验证追踪数据会不会丢失

Skywalking告警通知

【1】skywalking告警的核心由一组规则驱动,这些规则定义在config/alarm-settings.yml文件中,告警规则的定义分为三部分:

【2】skywalking发行版中提供了默认的alarm-setting.yml文件,包括一些规则,每个规则有英文注释。

1)可以根据注释得知每个规则的作用:

2)参数说明:

【3】实现回调接口

【5】Webhook回调通知

SkyWalking告警Webhook回调要求接收方是一个Web容器(比如tomcat服务),告警的消息会通过HTTP请求进行发送, 请求方法为POST, Content-Type为application/json, JSON格式基于List

Original: https://www.cnblogs.com/chafry/p/16801271.html
Author: 忧愁的chafry
Title: 微服务组件—-SpringCloudAlibaba链路追踪skywalking详解

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/710938/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • SharePoint每日小贴士Web部件

    SharePoint每日小贴士Web部件 项目描写叙述 此Web部件从指定SP自己定义列表或一个选定的 RSS源选择一个随机项目。并显示一张图片、标题和一个Tip。 适用于WSS …

    技术杂谈 2023年5月31日
    096
  • 搭建eureka服务注册中心,单机版

    单独搭建的 搭建springboot项目 (1)pom文件 <?xml version="1.0" encoding="UTF-8"?…

    技术杂谈 2023年7月23日
    072
  • 初识Java

    ; ; C&C++ Java应运而生 以这样的构想进行编写 语法类似C 没有指针 没有内存管理 可移植性 面向对象 类型安全 高质量的类库 …… 可移植性 …

    技术杂谈 2023年6月21日
    0100
  • Java数据结构和算法

    一、数据结构 数据结构是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。 通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同…

    技术杂谈 2023年7月24日
    091
  • 写作猫

    https://xiezuocat.com/#/pro/4451271 Original: https://www.cnblogs.com/qiumingcheng/p/15876…

    技术杂谈 2023年6月1日
    095
  • WaterfallTree(瀑布树) 详细技术分析系列

    前言 WaterfallTree(瀑布树) 是最强纯C#开源NoSQL和虚拟文件系统-STSdb专有的(版权所有/专利)算法/存储结构。 参考 关于STSdb,我之前写过几篇文章,…

    技术杂谈 2023年5月31日
    094
  • 8089汇编 源程序

    8089汇编 源程序 汇编程序:包含汇编指令和伪指令的文本。 汇编语言由汇编指令和伪指令构成,想要组合成源程序进行编译就需要这么做。 汇编指令 对应有机器码的指令,可以被编译为机器…

    技术杂谈 2023年6月1日
    093
  • phpmyadmin 导出数据表

    — — &#x8868;&#x7684;&#x7ED3;&#x6784; eb_store_category — DROP TABLE IF …

    技术杂谈 2023年5月31日
    093
  • LeetCode35.搜索插入位置

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 …

    技术杂谈 2023年7月24日
    067
  • 解决ERR Client sent AUTH, but no password is set

    在搭建cookies池时,需要将账号密码保存到redis,保存时报错: ERR Client sent AUTH, but no password is set 报错原因:Redi…

    技术杂谈 2023年5月31日
    084
  • java实现设置Excel下拉框

    在使用Excel的时候用到了下拉框,实现的效果如下↓ 在生成excel文件时,需要根据给出的下拉框选项列表动态生成下拉框。实现代码如下: private void createSe…

    技术杂谈 2023年7月11日
    058
  • 图像搜索、以图搜图测试更新版

    图像搜索、以图搜图测试更新版; Original: https://www.cnblogs.com/chenying99/p/13164491.htmlAuthor: 刺猬的温驯T…

    技术杂谈 2023年5月31日
    087
  • InnoDB中不同SQL语句设置的锁

    锁定读、UPDATE 或 DELETE 通常会给在SQL语句处理过程扫描到的每个索引记录上设置记录锁。语句中是否存在排除该行的WHERE条件并不重要。InnoDB不记得确切的WHE…

    技术杂谈 2023年7月24日
    062
  • WinDbg符号配置

    符号文件介绍 它包含了应用程序二进制文件(比如:EXE、DLL等)调试信息,专门用来作调试之用,最终生成的可执行文件在运行时并不需要这个符号文件,但你的程序中所有的变量信息都记录在…

    技术杂谈 2023年7月11日
    072
  • 不允许脏主选举导致Broker被强制关闭

    https://www.cnblogs.com/wangbin/p/10647997.html https://blog.csdn.net/Alex_Sheng_Sea/artic…

    技术杂谈 2023年5月31日
    087
  • 产品安全合规评估工具

    CIS Benchmark : https://www.cisecurity.org/cis-benchmarks/ Original: https://www.cnblogs.c…

    技术杂谈 2023年5月31日
    093
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球