在之前的go-zero教程里,我们介绍了使用演示工程开发user模块和search模块,为了更直观的呈现请求的生命周期,我们引入:链路追踪,这里我们使用的链路追踪工具是jaeger, 

开发环境

Windows 11

terminal preview

go 1.19

 

第一步:为go-zero的演示工程模块添加jaeger配置参数

go-zero的演示工程有2个模块,分别是:user和search,要为这2个模块配置jaeger,需要进行如下操作:

1. 编辑 service/user/api/etc/user-api.yaml,添加jaeger配置参数:

#链路追踪 http://localhost:16686/search
Telemetry:
  Name: user.api
  Endpoint: http://localhost:14268/api/traces
  Sampler: 1.0
  Batcher: jaeger

2.编辑 service/search/api/etc/search-api.yaml,添加jaeger配置参数:

#链路追踪 http://localhost:16686/search
Telemetry:
  Name: search.api
  Endpoint: http://localhost:14268/api/traces
  Sampler: 1.0
  Batcher: jaeger

 

第二步:为Windows环境配置jaeger

从jaeger的官网或https://rocdu.gitbook.io/jaeger-doc-zh/getting-started下载二进制的jaeger的可执行文件,下载完解压到本地文件夹,如:d:/soft/jaeger-1.42.0-windows-amd64

 

第三步:启动jaeger

打开terminal preview,切换到d:/soft/jaeger-1.42.0-windows-amd64文件夹下,执行下面的命令启动jaeger:

jaeger-all-in-one.exe

  在浏览器访问 http://localhost:16686/search

 

第四步:使用jaeger查看请求链路

使用terminal preview,打开cmd命令提示符,执行下面的命令:

curl -i -X GET http://127.0.0.1:8889/search/ping

  请求search模块的search/ping接口,刷新 http://localhost:16686/search,把左侧的service下拉列表选择search.api服务,然后点Find Traces,在右边可以看到刚才发起的请求,点开就可以看到请求链路的详细信息了。