예제 #1
0
 public SpanDecorator(ISpan span, ITracer tracer, string operationName, SpanDecoratorHooks hooks)
 {
     _span          = span;
     _tracer        = tracer;
     _operationName = operationName;
     _hooks         = hooks;
 }
예제 #2
0
        public virtual ISpan Start()
        {
            var span = _spanBuilder.Start();

            _hooks.OnSpanStarted(span, _operationName);
            var callback  = _hooks.OnSpanStartedWithFinishCallback(span, _operationName);
            var spanHooks = new SpanDecoratorHooks(_hooks, callback);

            var decorator = new SpanDecorator(span, _tracer, _operationName, spanHooks);

            ApplyPostponedTags(decorator);
            return(decorator);
        }