Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nginx ingress 带有opentracing的Kubernetes nginx入口控制器不显示url资源路径_Nginx Ingress_Opentracing - Fatal编程技术网

Nginx ingress 带有opentracing的Kubernetes nginx入口控制器不显示url资源路径

Nginx ingress 带有opentracing的Kubernetes nginx入口控制器不显示url资源路径,nginx-ingress,opentracing,Nginx Ingress,Opentracing,我们在aws eks上使用kubenrnetes nginx ingress控制器版本0.25.1(kubernetes版本1.13)。 我们根据文档启用opentracing,并使用Datadog查看跟踪。我们有一个通用的入口规则来捕获每条路径: rule { host = "staging.example.com" http { path { backend { service_name = "cpe-test1" service_

我们在aws eks上使用kubenrnetes nginx ingress控制器版本0.25.1(kubernetes版本1.13)。 我们根据文档启用opentracing,并使用Datadog查看跟踪。我们有一个通用的入口规则来捕获每条路径:

rule {
  host = "staging.example.com"
  http {
    path {
      backend {
        service_name = "cpe-test1"
        service_port = 80
      }

      path = "/"
    }
  }
}
在Datadog ui中,我们可以看到nginx跟踪,但是“资源”列始终显示“/”而不是完整路径,即“/test”或“/ping”。

如果我们为每个资源路径创建单独的入口规则,那么我们将看到预期的完整路径(即“/test”或“/ping”),但是为每个路径创建入口规则非常不方便和繁琐。是否有任何方法可以在datadog UI中查看完整的资源路径,而无需为每个资源路径创建单独的入口规则?

这可以通过在nginx入口中添加以下注释来实现:

annotations:
    ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/configuration-snippet: |
      opentracing_trace_locations off;
      opentracing_tag resource.name $uri;

请参阅

的完整答案,我认为这是不可能的。查看它会根据
位置
块创建路径,并根据
入口路径
创建1个
位置
块(
opentracing\u operation\u name
opentracing\u location\u operation\u name
可以更改,但这些仍然是静态值)。