Ejemplo n.º 1
0
        public async override Task SendAsync(TraceSpan traceSpan)
        {
            string deep        = traceSpan.ParentId == null ? "Root" : "Child";
            string time        = ((int)((traceSpan.EndTime - traceSpan.StartTime).TotalMilliseconds + 0.5)).ToString();
            string displayName = traceSpan.DisplayName;

            await Console.Out.WriteLineAsync("Tracer:    " + deep.PadLeft(5, ' ') + " [" + time.PadLeft(5, ' ') + "]  " + displayName);
        }
Ejemplo n.º 2
0
        public void Dispose()
        {
            TraceSpan traceSpan = new TraceSpan();

            traceSpan.Id          = SpanId;
            traceSpan.ParentId    = _parentSpanId;
            traceSpan.TraceId     = TraceId;
            traceSpan.StartTime   = _startTime;
            traceSpan.EndTime     = DateTime.UtcNow;
            traceSpan.DisplayName = _displayName;
            traceSpan.Attributes  = Attributes;

            _tracer.Send(traceSpan);
        }
Ejemplo n.º 3
0
 internal void Send(TraceSpan traceSpan)
 {
     Task.Factory.StartNew(async() =>
     {
         try
         {
             await SendAsync(traceSpan);
         }
         catch { }
     },
                           _cancellationToken,
                           TaskCreationOptions.DenyChildAttach,
                           _taskScheduler);
 }
Ejemplo n.º 4
0
 public abstract Task SendAsync(TraceSpan traceSpan);