首页 > 其他分享 >Zipkin链路监控实践

Zipkin链路监控实践

时间:2023-07-18 17:44:46浏览次数:39  
标签:zipkin provider server Zipkin 监控 链路 consumer

Zipkin是一种开源的分布式链路追踪系统,可以用于监控和跟踪微服务架构中的请求调用链。它可以帮助定位和解决分布式系统中的延迟问题,提供对请求的可视化跟踪和监控。

一、引入依赖

       使用项目来启动Zipkin,创建一个springboot web项目添加zipkin依赖

 1     <groupId>com.mike.study</groupId>
 2   <artifactId>zipkin</artifactId>
 3   <version>0.0.1-SNAPSHOT</version>
 4   <name>zipkin</name>
 5   <description>Demo project for zipkin</description>
 6   <dependencies>
 7     <dependency>
 8       <groupId>org.springframework.boot</groupId>
 9       <artifactId>spring-boot-starter-web</artifactId>
10     </dependency>
11 
12     <!--引入的zipkinServer依赖-->
13     <dependency>
14       <groupId>io.zipkin.java</groupId>
15       <artifactId>zipkin-server</artifactId>
16       <version>${zipkin.version}</version>
17     </dependency>
18     <dependency>
19       <groupId>io.zipkin.java</groupId>
20       <artifactId>zipkin-autoconfigure-ui</artifactId>
21       <version>${zipkin.version}</version>
22     </dependency>
23   </dependencies>

配置application.yml

1 management:
2   metrics:
3     web:
4       server:
5         auto-time-requests: false
6 server:
7   port: 9411

二、启动zipkin

在监控项目中使用@EnableZipkinServer注解启动zipkin

 1 import org.springframework.boot.SpringApplication;
 2 import org.springframework.boot.autoconfigure.SpringBootApplication;
 3 import zipkin.server.internal.EnableZipkinServer;
 4 
 5 @SpringBootApplication
 6 @EnableZipkinServer
 7 public class ZipkinApplication {
 8 
 9   public static void main(String[] args) {
10     SpringApplication.run(ZipkinApplication.class, args);
11   }
12 
13 }

至此,zipkin监控项目也就搭建好了,只需要把需要监控的项目注册上来,即可跟踪链路了。

三、测试

创建3个微服务项目,分别是consumer,gateway,provider。consumer 通过gateway请求provider的服务。

3.1provider server

首先是provider,提供api查询用户信息

 要把provider注册到zipkin,需要添加依赖

1     <dependency>
2       <groupId>org.springframework.cloud</groupId>
3       <artifactId>spring-cloud-starter-zipkin</artifactId>
4     </dependency>

再配置application.yml,告诉provider注册到那个zipkin

1 spring:
2   zipkin:
3     base-url: http://localhost:9411 # zipkin服务地址
4     sleuth:
5       sampler:
6         probability: 1 # 抽样百分比(0~1)
7     sender:
8       type: web # 链路类型(kafka,rabbitmq)

如法炮制,将gateway, consumer同样注册到zipkin,然后分别启动provider,gateway和consumer,然后请求consumer的controller。

访问http://localhost:7000/warp/user/2.1/5?token=13

 再访问链路服务http://localhost:9411/zipkin/

 

 

 

通过链路分析,可以清晰看到每个服务的耗时,以及项目之间的依赖关系

 

标签:zipkin,provider,server,Zipkin,监控,链路,consumer
From: https://www.cnblogs.com/lfhappy/p/17563665.html

相关文章

  • node_export自定义启动监控指标
    /usr/local/bin/node_exporter--collector.ntp--collector.supervisord--collector.supervisord.url=http://localhost:9001/RPC2--collector.textfile.directory=/var/opt--collector.time--collector.cpu--collector.filesystem--collector.filefd--collector.loa......
  • 【性能测试】性能监控-python编写(CPU | 内存 | 磁盘io)占比监控脚本
    一、主要通过Python脚本实现对linux环境(CPU|内存|磁盘io)监控脚本示例:importtimeimportsubprocess#获取CPU使用率defget_cpu_usage():#系统CPU占比=系统态占比+空闲态占比=3.2%+36.5%=39.7%cpu_usage=subprocess.check_output("top-bn1......
  • zabbix监控/Prometheus简介
    1.监控知识体系  为什么使用监控:  对系统不间断实时监控,实时反馈系统当前状态,保证服务可靠性安全性,保证业务持续稳定运行  新公司如何引入监控:  硬件监控:路由器、交换机、防火墙;  系统监控:CPU、内存、磁盘、网络、进程、TCP  服务监控:Nginx、PHP、tomcat......
  • springboot 使用caffeine 并监控本地缓存
    1、添加依赖<dependency><groupId>com.github.ben-manes.caffeine</groupId><artifactId>caffeine</artifactId></dependency> 2、添加配置packagecom.example.demo.config;importcom.github.ben......
  • Loki+Promtail+Grafana 监控 K8s 日志
    Loki架构:1、loki:服务端,负责存储日志和处理查询2、promtail:采集端,负责采集日志发送给loki3、grafana:负责采集日志的展示创建yml文件cat>loki-rbac.yaml<<EOFapiVersion:v1kind:ServiceAccountmetadata:name:lokinamespace:thanos-monitoringapiVersion:rbac......
  • msmpeng.exe 是 Windows Defender 的后台服务进程,也称为 Windows Defender Antimalwar
    msmpeng.exe是MicrosoftWindowsDefender的主要组件之一。WindowsDefender是Windows操作系统内置的杀毒软件和安全防护工具,用于检测和清除计算机上的潜在恶意软件、病毒和其他安全威胁。具体来说,msmpeng.exe是WindowsDefender的后台服务进程,也称为WindowsDefender......
  • m完整的SC-FDE单载波频域均衡通信链路matlab仿真,包括UW序列,QPSK,定时同步,载波同步,
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要        完整的SC-FDE单载波频域均衡通信链路的设计和实现,包括UW序列的设计、QPSK调制、帧同步、定时同步、载波同步、SNR估计和MMSE信道估计等环节。本文首先介绍了SC-FDE通信系统的基本......
  • java项目配置druid监控页面
    druid监控页面如图: 满足条件:1.项目引入了druid相关的jar包 2.项目加入druid相关的配置#####druid监控#####WebStatFilter配置spring.datasource.druid.web-stat-filter.enabled=truespring.datasource.druid.web-stat-filter.url-pattern=/*spring.datasource.......
  • 监控生命周期
    服务器上架到机柜基础设施监控服务器温度,风扇转速 ipmitool命令,只能用在物理机存储的监控(df,fdisk,iotop)cpu(lscpu,uptime,top,htop,glances)内存情况(free)网络(iftop)应用监控       mysql  redis        nginx       php......
  • shell脚本-监控多台服务器磁盘利用率
    shell脚本-监控多台服务器磁盘利用率介绍第一步:实现免密登录服务器,为后续脚本免密登录做好准备。第二步:把要监控服务器的ip地址root用户端口port写入host.info文件中以便后续脚本从这个文件读取服务器信息。第三步:写shell脚本,先从host.info中拿到信息连接各个服务器,读取......