Skip to content

Commit 0d65131

Browse files
committed
Updates per PR feedback.
1 parent f9f8ea3 commit 0d65131

File tree

2 files changed

+27
-24
lines changed

2 files changed

+27
-24
lines changed

src/Shared/Grpc/Tracing/TraceHelper.cs

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,11 @@ class TraceHelper
4646
}
4747
}
4848

49-
if (Activity.Current?.Id != null || Activity.Current?.TraceStateString != null)
49+
if (Activity.Current is not null)
5050
{
5151
createInstanceRequest.ParentTraceContext ??= new P.TraceContext();
52-
53-
if (Activity.Current?.Id != null)
54-
{
55-
createInstanceRequest.ParentTraceContext.TraceParent = Activity.Current?.Id;
56-
}
57-
58-
if (Activity.Current?.TraceStateString != null)
59-
{
60-
createInstanceRequest.ParentTraceContext.TraceState = Activity.Current?.TraceStateString;
61-
}
52+
createInstanceRequest.ParentTraceContext.TraceParent = Activity.Current.Id!;
53+
createInstanceRequest.ParentTraceContext.TraceState = Activity.Current.TraceStateString;
6254
}
6355

6456
return newActivity;
@@ -438,12 +430,9 @@ static string CreateSpanName(string spanDescription, string? taskName, string? t
438430
return null;
439431
}
440432

441-
if (createdEvent.ParentTraceContext != null)
433+
if (createdEvent.ParentTraceContext != null && ActivityContext.TryParse(createdEvent.ParentTraceContext.TraceParent, createdEvent.ParentTraceContext.TraceState, out ActivityContext parentContext))
442434
{
443-
if (ActivityContext.TryParse(createdEvent.ParentTraceContext.TraceParent, createdEvent.ParentTraceContext?.TraceState, out ActivityContext parentContext))
444-
{
445-
activity.SetSpanId(parentContext.SpanId.ToString());
446-
}
435+
activity.SetSpanId(parentContext.SpanId.ToString());
447436
}
448437

449438
activity.SetTag(Schema.Task.Type, TraceActivityConstants.Orchestration);

src/Worker/Grpc/GrpcDurableTaskWorker.Processor.cs

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -377,9 +377,11 @@ async Task OnRunOrchestratorAsync(
377377
{
378378
case P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceCompleted:
379379
{
380-
var subOrchestrationEvent = request.PastEvents
381-
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceCreated)
382-
.LastOrDefault(x => x.EventId == newEvent.SubOrchestrationInstanceCompleted.TaskScheduledId);
380+
var subOrchestrationEvent =
381+
request
382+
.PastEvents
383+
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceCreated)
384+
.FirstOrDefault(x => x.EventId == newEvent.SubOrchestrationInstanceCompleted.TaskScheduledId);
383385

384386
TraceHelper.EmitTraceActivityForSubOrchestrationCompleted(
385387
request.InstanceId,
@@ -390,9 +392,11 @@ async Task OnRunOrchestratorAsync(
390392

391393
case P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceFailed:
392394
{
393-
var subOrchestrationEvent = request.PastEvents
394-
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceCreated)
395-
.LastOrDefault(x => x.EventId == newEvent.SubOrchestrationInstanceFailed.TaskScheduledId);
395+
var subOrchestrationEvent =
396+
request
397+
.PastEvents
398+
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.SubOrchestrationInstanceCreated)
399+
.FirstOrDefault(x => x.EventId == newEvent.SubOrchestrationInstanceFailed.TaskScheduledId);
396400

397401
TraceHelper.EmitTraceActivityForSubOrchestrationFailed(
398402
request.InstanceId,
@@ -404,14 +408,24 @@ async Task OnRunOrchestratorAsync(
404408

405409
case P.HistoryEvent.EventTypeOneofCase.TaskCompleted:
406410
{
407-
var taskScheduledEvent = request.PastEvents.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.TaskScheduled).LastOrDefault(x => x.EventId == newEvent.TaskCompleted.TaskScheduledId);
411+
var taskScheduledEvent =
412+
request
413+
.PastEvents
414+
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.TaskScheduled)
415+
.LastOrDefault(x => x.EventId == newEvent.TaskCompleted.TaskScheduledId);
416+
408417
TraceHelper.EmitTraceActivityForTaskCompleted(request.InstanceId, taskScheduledEvent, taskScheduledEvent?.TaskScheduled);
409418
break;
410419
}
411420

412421
case P.HistoryEvent.EventTypeOneofCase.TaskFailed:
413422
{
414-
var taskScheduledEvent = request.PastEvents.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.TaskScheduled).LastOrDefault(x => x.EventId == newEvent.TaskFailed.TaskScheduledId);
423+
var taskScheduledEvent =
424+
request
425+
.PastEvents
426+
.Where(x => x.EventTypeCase == P.HistoryEvent.EventTypeOneofCase.TaskScheduled)
427+
.LastOrDefault(x => x.EventId == newEvent.TaskFailed.TaskScheduledId);
428+
415429
TraceHelper.EmitTraceActivityForTaskFailed(request.InstanceId, taskScheduledEvent, taskScheduledEvent?.TaskScheduled, newEvent.TaskFailed);
416430
break;
417431
}

0 commit comments

Comments
 (0)