SpringCloud三:提供者和消费者的日志分析Zipkin+RabbitMQ

之前的文章中说到,提供者和消费者的微服务调用的日志跟踪,
SpringCloud之提供者架构Eureka+Sleuth+RabbitMQ
SpringCloud之消费者架构Eureka+Ribbon+Feign+Hystrix+Sleuth+RabbitMQ
使用Sleuth+RabbitMQ把日志发布到RabbitMQ中,让Zipkin订阅分析,本次就说一下Zipkin+RabbitMQ如何搭建,搭建方式较多
可以参看官方的
zipkin官方文档
可以使用docker如下命令搭建zipkin

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

我觉得还是自己定制一个微服务较为灵活,下面使用SpringBoot搭建zipkin微服务

在pom.xml引入依赖
注意:
SpringBoot的版本为1.5.15
SpringCloud的版本为Edgware.SR4


		<!--RabbitMQ+Zipkin  -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-sleuth-zipkin-stream</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-stream-rabbit</artifactId>
		</dependency>
		<dependency>
			<groupId>io.zipkin.java</groupId>
			<artifactId>zipkin-autoconfigure-ui</artifactId>
		</dependency>
		
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

在application.yml中配置,zipkin的默认端口为9411,配置RabbitMQ,从RabbitMQ中订阅生产者和消费者的日志信息

server:
  port: 9411

spring:
  application:
    name: zipkin
  rabbitmq:
    host: 120.77.245.104
    port: 5672
    username: guest
    password: guest

在启动类总开启ZipkinServer,由于使用基于RabbitMQ的,使用注解@EnableZipkinStreamServer


@EnableZipkinStreamServer
@SpringBootApplication
public class ZipkinApplication {

	public static void main(String[] args) {
		SpringApplication.run(ZipkinApplication.class, args);
	}
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章