@@ -88,8 +88,6 @@ let observe = Atomic.make false
8888
8989let  set_observe =  Atomic. set observe
9090
91- let  get_observe  ()  =  Atomic. get observe
92- 
9391module  SpanKind  =  struct 
9492  type  t  = Server  | Consumer  | Client  | Producer  | Internal  [@@ deriving rpcty ]
9593
@@ -563,20 +561,18 @@ let set ?enabled ?attributes ?endpoints ~uuid () =
563561            failwith
564562              (Printf. sprintf " The TracerProvider : %s does not exist" 
565563      in 
566-       Hashtbl. replace tracer_providers uuid provider
567-   ) ;
568-   if 
569-     List. for_all
570-       (fun  provider  -> not  provider.TracerProvider. enabled)
571-       (get_tracer_providers () )
572-   then  (
573-     set_observe false  ;
574-     Xapi_stdext_threads.Threadext.Mutex. execute Spans. lock (fun  ()  ->
564+       Hashtbl. replace tracer_providers uuid provider ;
565+       if 
566+         List. for_all
567+           (fun  provider  -> not  provider.TracerProvider. enabled)
568+           (get_tracer_providers () )
569+       then  (
570+         set_observe false  ;
575571        Hashtbl. clear Spans. spans ;
576572        Hashtbl. clear Spans. finished_spans
577-     ) 
578-   )  else   if   not  (get_observe  () )  then 
579-     set_observe  true 
573+       )  else 
574+         set_observe  true 
575+   ) 
580576
581577let  create  ~enabled   ~attributes   ~endpoints   ~name_label   ~uuid   = 
582578  let  endpoints =  List. map endpoint_of_string endpoints in 
@@ -618,7 +614,7 @@ let enable_span_garbage_collector ?(timeout = 86400.) () =
618614  Spans.GC. initialise_thread ~timeout 
619615
620616let  with_tracing  ?(attributes  = [] )  ?(parent  = None )  ~name   f  = 
621-   if  not  (get_observe  () ) then 
617+   if  not  (Atomic. get observe ) then 
622618    f None 
623619  else 
624620    let  tracer =  get_tracer ~name  in 
0 commit comments