就OpenTracing而言,span.kind=server
和span.kind=client
有什么区别?我怎么知道该选哪一个?到底是什么意思?
例如我的服务Foo最初是由外部服务酒吧调用的。我开始在Foo端进行跟踪,逻辑是在系统中调用另一个服务Buzz以继续流链。我宁愿假设外部服务Bar是client
,但无法从那里开始跟踪。您的建议是-在我的服务Foo中以client
的身份开始跟踪,然后仅将以下所有服务视为服务器?
设置:k8s微服务,jaeger指标。
答案 0 :(得分:1)
span.kind=server
标签表示输入范围,例如在本地代码中为响应外部请求而创建的范围。同样,span.kind=client
表示出口范围,例如从本地代码到另一台服务器的呼叫。
在您的示例中,为Foo生成的跨度为span.kind=server
,记录对Buzz的呼叫的跨度为span.kind=client
。