Explorar o código

HUE-8936 [tracing] Add query id to execute statement trace

Romain %!s(int64=6) %!d(string=hai) anos
pai
achega
a7cf79720b

+ 2 - 1
desktop/core/src/desktop/settings.py

@@ -732,7 +732,7 @@ OPENTRACING_TRACER_CALLABLE = __name__ + '.tracer'
 def tracer():
     from jaeger_client import Config
     config = Config(
-        config={ # usually read from some yaml config
+        config={
             'sampler': {
                 'type': 'const',
                 'param': 1,
@@ -748,4 +748,5 @@ def tracer():
 # only valid if OPENTRACING_TRACE_ALL == True
 OPENTRACING_TRACED_ATTRIBUTES = ['META']
 
+
 MIDDLEWARE_CLASSES.insert(0, 'django_opentracing.OpenTracingMiddleware')

+ 6 - 0
desktop/libs/notebook/src/notebook/api.py

@@ -28,6 +28,7 @@ from django.urls import reverse
 from django.db.models import Q
 from django.utils.translation import ugettext as _
 from django.views.decorators.http import require_GET, require_POST
+import opentracing.tracer
 
 from desktop.api2 import __paginate
 from desktop.conf import TASK_SERVER
@@ -180,6 +181,11 @@ def execute(request, engine=None):
 
   response = _execute_notebook(request, notebook, snippet)
 
+  opentracing.tracer.active_span.set_tag(
+    'query-id',
+    response['handle']['guid'] if response.get('handle') and response['handle'].get('guid') else None
+  )
+
   return JsonResponse(response)