在我的项目中,我尝试使用opentracing
.
我的微服务具有以下结构。
-- API-Gateway
|_ User-Service
|_ Notification
在我的 API 网关中,我启动并在 API 网关中,我使用一个函数来开始跟踪,代码取自Setting up your tracer
在main()
:
gatewayTracer := &apiTracer{tracer: startTracing("API Gateway")}
http.HandleFunc("/getemail", gatewayTracer.validatemail)
func (apitracer apiTracer) validatemail(res http.ResponseWriter, req *http.Request) {
validateEmailSpan := apitracer.tracer.StartSpan("Validate Email")
}
validateemail()
我从使用调用我的用户服务http.PostForm()
。
_, err := http.PostForm("http://user:7071/checkemail", url.Values{"uuid": {uuid}, "email": {email}})
这uuid
是单独的任务,而不是跟踪。我无法Span
使用PostForm()
.
如何克服这个问题?