首页 > 其他分享 >微服务-链路追踪

微服务-链路追踪

时间:2023-06-14 09:33:12浏览次数:43  
标签:服务 zipkin -- Zipkin jar mysql 链路 服务端 追踪

https://www.jianshu.com/p/466556685781

1、Sleuth

Sleuth将一个完整的request定义为一个trace,而每经过一个服务则会生成一个span,附加到trace下,形成对这个request的链路追踪

2、Zipkin

  • 客户端:指微服务应用,客户端会配置服务端的 URL 地址,一旦发生服务间的调用的时候,会被配置在微服务里面的 Sleuth 的监听器监听,并生成相应的 Trace 和 Span 信息发送给服务端,发送的方式主要有两种,一种是 HTTP 报文的方式,还有一种是消息总线的方式如 RabbitMQ
  • 服务端:服务端负责将接收到的消息根据 traceIdspanId 整理成一个完整的request时序链路,并通过web页面直观的展示出来

sleuth 与 zipkin 的组合只能完成链路信息的追踪,不具备统一日志收集的功能

Zipkin服务端

Zipkin 的服务端,在使用 Spring Boot 2.x 版本后,官方就不推荐自行定制编译了,反而是直接提供了编译好的 jar 包来给我们使用,官方提供了一键脚本(Windows下需要安装curl,不过如果你安装了Git客户端,可以直接在Git Bash中使用)

curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar

如果用 Docker 的话,直接

docker run -d -p 9411:9411 openzipkin/zipkin

任一方式启动后,访问 http://localhost:9411/zipkin/ 就能看到管理页面

Zipkin客户端

1、引入依赖

这个依赖会引入进一步引入sleuth的依赖:spring-cloud-starter-sleuth

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

2、添加配置,指定 Zipkin 服务器的地址

spring:
	zipkin:
		base-url: http://localhost:9411

将数据存储到mysql

默认启动的zipkin将数据保存在内存,Zipkin支持将追踪数据持久化到mysql或者elasticsearch中

1、持久化到mysql

  • 创建mysql数据库zipkin
CREATE DATABASE `zipkin` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
java -jar zipkin.jar --STORAGE_TYPE=mysql --MYSQL_HOST=127.0.0.1 --MYSQL_TCP_PORT=3306 --MYSQL_DB=zipkin --MYSQL_USER=root --MYSQL_PASS=123456

2、持久化到elasticsearch

标签:服务,zipkin,--,Zipkin,jar,mysql,链路,服务端,追踪
From: https://www.cnblogs.com/tanmujin/p/17440825.html

相关文章

  • 微服务框架的学习路线
    一、微服务的大体架构二、微服务的学习路线 参考:1、微服务架构是什么?有哪些优点和不足? ......
  • 如何快速搭建微服务架构
    微服务架构是一种分布式系统设计,它将应用程序拆分成多个独立的、互相通信的服务,每个服务都负责实现特定的功能。这种架构可以提高系统的可扩展性、容错性和开发效率,是现代软件开发中的一种主流架构。本文将介绍如何快速搭建微服务架构,帮助读者掌握这一重要技能。一、选择合适的工具......
  • Kubernetes服务发现&Headless Service
    一、基于DNS的服务发现ClusterDNS(CoreDNS)是Kubernetes集群的必备附件,负责为Kubernetes提供名称解析和服务发现。每个Service对象在创建时都会生成一个遵循”<service>.<ns>.svc.<zone>”格式的名称,由ClusterDNS为该名称生成资源记录。service、ns、zone分别代表服务的名称、名称......
  • 服务器互信
    目标:本机能scp文件到目标服务器上在本机执行ssh-keygen#跳出来的选项全部按回车cat~/.ssh/id_rsa.pub#将文件内容复制到目标机器的~/.ssh/authorized_keys目录即可目标机器vim~/.ssh/authorized_keys......
  • 【Azure 应用服务】Azure Data Factory中调用Function App遇见403 - Forbidden
    问题描述在AzureDataFactory(数据工厂)中,调用同在Azure中的FunctionApp函数,却出现403-Forbidden错误。截图如下:  问题解答访问AzureFunctionApp遇见403-Forbidden错误,这是因为FunctionApp启用了限制访问功能,在其中配置了允许访问的IP地址列表,而从ADF中发出的请求使用的I......
  • 【Azure 应用服务】Azure Data Factory中调用Function App遇见403 - Forbidden
    问题描述在AzureDataFactory(数据工厂)中,调用同在Azure中的FunctionApp函数,却出现403-Forbidden错误。截图如下:  问题解答访问AzureFunctionApp遇见403-Forbidden错误,这是因为FunctionApp启用了限制访问功能,在其中配置了允许访问的IP地址列表,而从ADF中发出的请......
  • 云服务器带宽5M支持多少人在线?
    云服务器的带宽是指在特定时间内可以传输数据的速率。一般情况下,云服务器的带宽以Mbps(兆位每秒)为单位来衡量。当您提到云服务器带宽为5M时,我假设您指的是5Mbps的带宽。要确定云服务器带宽能够支持多少人在线,需要考虑以下几个因素:1.平均用户带宽需求:不同类型的网站或应用程序......
  • 浪潮信息获颁泰尔实验室首张服务器碳足迹证书
    日前,权威检测机构中国泰尔实验室颁发首张服务器产品碳足迹认证证书。经过对原材料获取、整机生产、运输、包装、产品使用到产品拆解回收等全生命周期的评估测试,每万台浪潮信息NF5280M6全生命周期较业界平均水平可节约碳排放686吨,相当于植树5万棵,达到业内领先水平。*泰尔实验室作为......
  • FFmpeg服务器适配问题
    用org.bytedeco  javacv/ ffmpeg-platform  /javacpp 实现的ffmpeg视频抽帧截取图片在cenos正常但是在arm64服务器有适配的问题。解决方案换另外的实现: <groupId>ws.schild</groupId>      <artifactId>jave-all-deps</artifactId>      ......
  • 修复“Print Spooler”服务,开机停止服务
    有同学说仅仅限制使用本次开启,下次开机要用时还是老样子。则可以将这条命令复制到记事本,保存为后缀为.bat的批处理程序,并放到开始菜单的“启动”里面就好了:netstart"PrintSpooler"注意事项​ 注:如果仍无法启动“PrintSpooler”服务,则需要运行杀毒软件来检查电脑。某些......