propagate trace from ocs to proxy

This commit is contained in:
A.Unger
2021-08-06 13:46:54 +02:00
parent feed3e589b
commit 8301a7e7a3
3 changed files with 50 additions and 73 deletions

View File

@@ -11,6 +11,8 @@ import (
"strings"
"time"
"go.opentelemetry.io/otel/propagation"
"github.com/owncloud/ocis/ocis-pkg/log"
"github.com/owncloud/ocis/proxy/pkg/config"
"github.com/owncloud/ocis/proxy/pkg/proxy/policy"
@@ -222,6 +224,7 @@ func (p *MultiHostReverseProxy) ServeHTTP(w http.ResponseWriter, r *http.Request
tracer := proxytracing.TraceProvider.Tracer("proxy")
ctx, span = tracer.Start(ctx, fmt.Sprintf("%s %v", r.Method, r.URL.Path))
defer span.End()
proxytracing.Propagator.Inject(ctx, propagation.HeaderCarrier(r.Header))
}
p.ReverseProxy.ServeHTTP(w, r.WithContext(ctx))
}