private void TraceStartInternal(string operationMemberName, string operationFilePath) { var fileName = Path.GetFileNameWithoutExtension(operationFilePath); CallTreeTrace = new ConsumerTrace( AppInfoProvider.Service.Name, $"{fileName}:{operationMemberName}"); }
public void ShouldSetCurrentTraceIfInvalidTraceInformationIsPassed() { TraceManager.SamplingRate = 1.0f; using (var client = new ConsumerTrace(serviceName, rpc, null, null, null, null, null)) { Assert.IsNotNull(client.Trace); } }
public void TraceStart( [CallerMemberName] string callerMemberName = "", [CallerFilePath] string callerFilePath = "") { var fileName = Path.GetFileNameWithoutExtension(callerFilePath); CallTreeTrace = new ConsumerTrace( AppInfoProvider.Service.Name, $"{fileName}:{callerMemberName}"); }
static async Task ProcessMessage(Message message) { // need to supply trace information from producer using (var messageConsumerTrace = new ConsumerTrace( serviceName: "message.consumer", rpc: "process message", encodedTraceId: message.TraceId, encodedSpanId: message.SpanId, encodedParentSpanId: message.ParentId, sampledStr: message.Sampled, flagsStr: message.Flags.ToString(CultureInfo.InvariantCulture))) { await messageConsumerTrace.TracedActionAsync(Task.Delay(600)); // Test delay for mock processing messageConsumerTrace.AddAnnotation(Annotations.Tag("sampleConsumerTag", "success!")); } }
public void ShouldSetChildTraceIfValidTraceInformationIsPassed() { TraceManager.SamplingRate = 1.0f; var rootTrace = Trace.Create(); var trace = rootTrace.Child(); var context = trace.CurrentSpan; using (var client = new ConsumerTrace(serviceName, rpc, context.SerializeTraceId(), context.SerializeSpanId(), context.SerializeParentSpanId(), context.SerializeSampledKey(), context.SerializeDebugKey())) { Assert.AreEqual(trace.CurrentSpan.SpanId, client.Trace.CurrentSpan.ParentSpanId); Assert.AreEqual(trace.CurrentSpan.TraceId, client.Trace.CurrentSpan.TraceId); } }
public void ShouldLogConsumerAnnotations() { // Arrange dispatcher .Setup(h => h.Dispatch(It.IsAny <Record>())) .Returns(true); // Act TraceManager.SamplingRate = 1.0f; using (var server = new ConsumerTrace(serviceName, rpc, null, null, null, null, null)) { // Assert dispatcher .Verify(h => h.Dispatch(It.Is <Record>(m => m.Annotation is ConsumerStart))); dispatcher .Verify(h => h.Dispatch(It.Is <Record>(m => m.Annotation is ServiceName && ((ServiceName)m.Annotation).Service == serviceName))); dispatcher .Verify(h => h.Dispatch(It.Is <Record>(m => m.Annotation is Rpc && ((Rpc)m.Annotation).Name == rpc))); } // Assert dispatcher .Verify(h => h.Dispatch(It.Is <Record>(m => m.Annotation is ConsumerStop))); }