Spring Cloud微服务之 sleuth+zipkin日志聚合

  • 时间:
  • 浏览:3
  • 来源:爱乐彩网站_爱乐彩下载_爱乐彩官网

Spring Cloud微服务之 sleuth+zipkin日志聚合

(1)首先在 pom.xml中增加依赖

本例都要创建3个 工程:

(2)在启动类增加@EnableZipkinServer注解,用来开启Zipkin Server的功能。

依赖和配置同 product-sevice。

Sleuth就离米 为微服务架构引入了一套记录体系,中含两主次,3个 是 trace ID;不需要 能 是 span ID,随时记录3个 请求的每一步操作。

}

第三步:启动项目并验证。

(1)哪此是服务追踪 Sleuth

1.(1)创建product-service工程,并增加依赖。

工程目录如图:

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;

import org.springframework.context.annotation.Bean;

import org.springframework.http.HttpStatus;

import org.springframework.http.ResponseEntity;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RestController;

import org.springframework.web.client.RestTemplate;

在微服务架构中,要完成3个 功能,通过Rest请求服务API调用服务来完成,整个调用过程不可能 会聚合多个后台服务器协同完成。在整个链路上,任何一处调用超时

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

import org.springframework.http.HttpStatus;

import org.springframework.http.ResponseEntity;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RestController;

(1)启动删改项目,启动成功后在监控页面查看结果。

product-sevice 普通客户端工程,提供3个 rest接口(项目创建参考第三节)

spring.application.name=zipkin-service

server.port=9411

eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/

(4)启动 Zipkin Server,访问 http://localhost:9411/,此时不可能 还不需要 能 服务请求关联的zipkin server,全都服务名里列表里是空的,如图:

package com.hole;

zipkin-service 日志服务工程,用于追踪记录请求链路。

的使用也很方便。

都要3个 工具还都要将哪此信息进行挂接和汇总,而且显示可视化的结果,便于分析和定位。这就都要创建3个 Zipkin Server用于挂接和展示哪此调用链路的信息,他

第一步:创建 zipkin-service,作为Zipkin Server。

zipkin 是 Dpper的开源实现,支持多种语言。Sleuth不可能 将每个请求从结速了调用到完成的每一步都进行了记录,而且哪此log信息会很分散,使用起来不太方便,就

Spring Cloud微服务之 sleuth+zipkin日志聚合

点击 Find Traces 查看结果还都要看后它的删改链路条,点击链条还都要看后调用链条,点击 Dependencies还都要查看依赖关系,等等,自行发觉吧,就不上图了。

(2)启动类增加 /product/hello接口,目的是调动 product-service接口。在接口入口位置做3个 日志打印。

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

(3)启动类代码增加 /hello 接口,并在接口入口处做3个 日志打印,代码如下

(2)访问 order-service 服务的 /product/hello接口,结果访问成功。还都要多刷新几次

}

2.(1)创建order-service工程。

}

(3)application.properties配置如下:

1.简介

@EnableDiscoveryClient

@SpringBootApplication

@RestController

public class ProductServiceApplication {

我应该 在界面还都要看后zipkin server搜集的日志信息及依赖关系,都要在每个工程中增加sleuth与zipkin的依赖,而且增加注册地址,指向到 zipkin server上就还都要了。

不可能 想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的亲戚你们还都要加我的Java高级交流:787707172,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给亲戚亲戚你们。

package com.hole;

第二步:创建日志客户端工程

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

import zipkin.server.EnableZipkinServer;

@EnableDiscoveryClient

@SpringBootApplication

@RestController

public class OrderServiceApplication {

(2)application.properties配置增加配置,指向 zipkin server服务地址。

@EnableDiscoveryClient

@EnableZipkinServer

@SpringBootApplication

public class ZipkinServiceApplication {

Spring Cloud微服务之 sleuth+zipkin日志聚合

package com.hole;

2.咋样使用

(2)哪此是日志聚合 Zipkin

order-service 普通客户端工程,用于调用product-service服务(项目创建参考第三节)

或出错不是不可能 造成前端请求失败。这时跟踪记录哪此请求的调用的情形就要复杂化的多,这就都要3个 专门的工具来解决,spring cloud sleuth组件并且用于跟踪记录的工具

Spring Cloud微服务之 sleuth+zipkin日志聚合

(3)访问 zipkin server(9411端口),查看日志服务列表,发现service name下拉框已有下拉选项,验证成功。