Skip to content

Commit 7bdef4e

Browse files
authored
ActivityExtensions - Convert empty TraceId into empty string (#509)
Skips bonus compare, but just rely on the string-value of an "empty" activity (faster and more simple)
1 parent 2959162 commit 7bdef4e

File tree

1 file changed

+10
-15
lines changed

1 file changed

+10
-15
lines changed

src/Elastic.CommonSchema.NLog/ActivityExtensions.cs

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ namespace Elastic.CommonSchema.NLog
77
/// </summary>
88
internal static class ActivityExtensions
99
{
10-
private static readonly ActivitySpanId EmptySpanId = default;
11-
private static readonly ActivityTraceId EmptyTraceId = default;
10+
private static readonly string EmptySpanIdToHexString = default(System.Diagnostics.ActivitySpanId).ToHexString();
11+
private static readonly string EmptyTraceIdToHexString = default(System.Diagnostics.ActivityTraceId).ToHexString();
1212

1313
public static string GetSpanId(this Activity activity) =>
1414
activity.IdFormat == ActivityIdFormat.W3C ?
@@ -27,25 +27,20 @@ public static string GetParentId(this Activity activity) =>
2727

2828
private static string SpanIdToHexString(ActivitySpanId spanId)
2929
{
30-
if (EmptySpanId.Equals(spanId))
30+
var spanIdString = spanId.ToHexString();
31+
if (ReferenceEquals(EmptySpanIdToHexString, spanIdString))
3132
return string.Empty;
32-
33-
var spanHexString = spanId.ToHexString();
34-
if (ReferenceEquals(spanHexString, EmptySpanId.ToHexString()))
35-
return string.Empty;
36-
37-
return spanHexString;
33+
else
34+
return spanIdString;
3835
}
3936

4037
private static string TraceIdToHexString(ActivityTraceId traceId)
4138
{
42-
if (EmptyTraceId.Equals(traceId))
39+
var traceIdString = traceId.ToHexString();
40+
if (ReferenceEquals(EmptyTraceIdToHexString, traceIdString))
4341
return string.Empty;
44-
45-
var traceHexString = traceId.ToHexString();
46-
return ReferenceEquals(traceHexString, EmptyTraceId.ToHexString())
47-
? string.Empty
48-
: traceHexString;
42+
else
43+
return traceIdString;
4944
}
5045
}
5146
}

0 commit comments

Comments
 (0)