Skip to content

Commit 675f794

Browse files
author
Liudmila Molkova
authored
When Activity is lost, copy parent tags to the new Activity (#30)
1 parent fd19e41 commit 675f794

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

src/Microsoft.AspNet.TelemetryCorrelation/ActivityHelper.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,11 @@ private static Activity RestoreActivity(Activity root)
203203
childActivity.AddBaggage(item.Key, item.Value);
204204
}
205205

206+
foreach (var item in root.Tags)
207+
{
208+
childActivity.AddTag(item.Key, item.Value);
209+
}
210+
206211
childActivity.Start();
207212

208213
AspNetTelemetryCorrelationEventSource.Log.ActivityRestored(childActivity.Id);

test/Microsoft.AspNet.TelemetryCorrelation.Tests/ActivityHelperTest.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ public void Dispose()
5454
public async Task Can_Restore_Activity()
5555
{
5656
var rootActivity = CreateActivity();
57+
58+
rootActivity.AddTag("k1", "v1");
59+
rootActivity.AddTag("k2", "v2");
5760
var context = HttpContextHelper.GetFakeHttpContext();
5861
await Task.Run(() =>
5962
{
@@ -339,6 +342,10 @@ private void AssertIsRestoredActivity(Activity original, Activity restored)
339342
var expectedBaggage = original.Baggage.OrderBy(item => item.Value);
340343
var actualBaggage = restored.Baggage.OrderBy(item => item.Value);
341344
Assert.Equal(expectedBaggage, actualBaggage);
345+
346+
var expectedTags = original.Tags.OrderBy(item => item.Value);
347+
var actualTags = restored.Tags.OrderBy(item => item.Value);
348+
Assert.Equal(expectedTags, actualTags);
342349
}
343350

344351
private Activity CreateActivity()

0 commit comments

Comments
 (0)