Browse Source

add traces for datasource reverse proxy requests

bergquist 8 years ago
parent
commit
3c8133aa4b
1 changed files with 11 additions and 0 deletions
  1. 11 0
      pkg/api/pluginproxy/ds_proxy.go

+ 11 - 0
pkg/api/pluginproxy/ds_proxy.go

@@ -15,6 +15,8 @@ import (
 	"text/template"
 	"time"
 
+	"github.com/opentracing/opentracing-go"
+
 	"github.com/grafana/grafana/pkg/api/cloudwatch"
 	"github.com/grafana/grafana/pkg/log"
 	"github.com/grafana/grafana/pkg/middleware"
@@ -85,6 +87,15 @@ func (proxy *DataSourceProxy) HandleRequest() {
 
 	proxy.logRequest()
 
+	span, ctx := opentracing.StartSpanFromContext(proxy.ctx.Req.Context(), "datasource reverse proxy")
+	proxy.ctx.Req.Request = proxy.ctx.Req.WithContext(ctx)
+
+	defer span.Finish()
+	span.SetTag("datasource_id", proxy.ds.Id)
+	span.SetTag("datasource_type", proxy.ds.Type)
+	span.SetTag("user_id", proxy.ctx.SignedInUser.UserId)
+	span.SetTag("org_id", proxy.ctx.SignedInUser.OrgId)
+
 	reverseProxy.ServeHTTP(proxy.ctx.Resp, proxy.ctx.Req.Request)
 	proxy.ctx.Resp.Header().Del("Set-Cookie")
 }