Beispiel #1
0
 /// <inheritdoc />
 public void Inject <TCarrier>(WavefrontSpanContext spanContext, TCarrier carrier)
 {
     if (carrier is ITextMap textMap)
     {
         textMap.Set(TraceId, spanContext.TraceId);
         textMap.Set(SpanId, spanContext.SpanId);
         foreach (var entry in spanContext.GetBaggageItems())
         {
             textMap.Set(BaggagePrefix + entry.Key, entry.Value);
         }
     }
     else
     {
         throw new ArgumentException("Invalid carrier " + carrier.GetType());
     }
 }
 /// <inheritdoc />
 public void Inject <TCarrier>(WavefrontSpanContext spanContext, TCarrier carrier)
 {
     if (carrier is ITextMap textMap)
     {
         textMap.Set(traceIdHeader, ContextToTraceIdHeader(spanContext));
         foreach (var entry in spanContext.GetBaggageItems())
         {
             textMap.Set(baggagePrefix + entry.Key, entry.Value);
         }
         if (spanContext.IsSampled())
         {
             textMap.Set(SamplingDecisionKey, spanContext.GetSamplingDecision().ToString());
         }
     }
     else
     {
         throw new ArgumentException("Invalid carrier " + carrier.GetType());
     }
 }