围绕分布式跟踪功能评估 Istio Sidecar 代理,目前我正在传递跟踪标头并将其作为应用程序代码的一部分接受,以下是标头:
"x-request-id"
"x-b3-spanid"
"x-b3-parentspanid"
"x-b3-sampled"
"x-b3-flags"
"x-ot-span-context"
有没有一种方法可以将这些标头配置为在 POD/入口级别与请求一起传递,这样我就不必对代码进行任何更改以实现服务之间的跟踪?
围绕分布式跟踪功能评估 Istio Sidecar 代理,目前我正在传递跟踪标头并将其作为应用程序代码的一部分接受,以下是标头:
"x-request-id"
"x-b3-spanid"
"x-b3-parentspanid"
"x-b3-sampled"
"x-b3-flags"
"x-ot-span-context"
有没有一种方法可以将这些标头配置为在 POD/入口级别与请求一起传递,这样我就不必对代码进行任何更改以实现服务之间的跟踪?
您可以使用虚拟服务将标头添加到由它路由的任何请求中:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: sample-route
spec:
hosts:
- '*'
http:
- route:
- destination:
host: app.prod.svc.cluster.local
headers:
request:
add:
key1: value1
key2: value2
从那里,您可以Virtual Service
将.Gateway
Ingressgateway