public SpanBuilderDecorator([NotNull] ISpanBuilder builder, [NotNull] string kind, [CanBeNull] string operationName) { this.builder = builder; this.operationName = operationName; builder.SetAnnotation(WellKnownAnnotations.Common.Kind, kind); }
public NewTraceContextUsing([NotNull] ITracer tracer, [CanBeNull] ISpanBuilder currentSpan, [CanBeNull] Guid?traceId) { this.tracer = tracer; oldContext = tracer.CurrentContext; tracer.CurrentContext = traceId.HasValue ? new TraceContext(traceId.Value, Guid.Empty) : null; builder = tracer.BeginSpan(); if (oldContext != null) { builder.SetAnnotation("ParentTraceId", oldContext.TraceId); builder.SetAnnotation("ParentTraceSpanId", oldContext.SpanId); } currentSpan?.SetAnnotation("ChildTraceId", builder.CurrentSpan.TraceId); }
public void SetAnnotation(string key, object value, bool allowOverwrite = true) { builder.SetAnnotation(key, value, allowOverwrite); }