Zipkin 是在微服务环境中常用的调用链跟踪服务。 其本身也是一个使用 Spring Boot 构建的应用,因为是开放源码的,所以我们可以获取源代码,并通过源代码来定制、构建该服务。

首先,需要获取源码,执行:

1
git clone https://github.com/openzipkin/zipkin.git

系统显示:

1
2
3
4
5
6
7
Cloning into 'zipkin'...
remote: Enumerating objects: 23, done.
remote: Counting objects: 100% (23/23), done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 185149 (delta 10), reused 6 (delta 0), pack-reused 185126
Receiving objects: 100% (185149/185149), 53.26 MiB | 252.00 KiB/s, done.
Resolving deltas: 100% (120067/120067), done.

克隆完成后,进入 zipkin 目录,该项目是一个 maven 项目,分为多个模块,要构建 zipkin-server, 需要执行以下命令:

1
mvn -Dlicense.skip=true -Dmaven.test.skip=true --also-make -pl zipkin-server clean package

在上面的命令中:

  1. license.skip=true, 忽略检查每个源文件中的许可协议信息
  2. maven.test.skip=true, 忽略编译、执行测试程序
  3. –also-make, 构建 zipkin 所依赖的项目

构建完成后,可以在 zipkin-server/target 目录中,找到对应版本的 jar 文件,类似:

1
2
3
zipkin-server-2.19.3-SNAPSHOT-exec.jar
zipkin-server-2.19.3-SNAPSHOT-slim.jar
zipkin-server-2.19.3-SNAPSHOT.jar