File tree 1 file changed +7
-11
lines changed
src/EventStore.Client/Common/Diagnostics
1 file changed +7
-11
lines changed Original file line number Diff line number Diff line change @@ -17,18 +17,14 @@ public static ReadOnlySpan<byte> InjectTracingContext(this ReadOnlyMemory<byte>
17
17
18
18
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
19
19
public static TracingMetadata ExtractTracingMetadata ( this ReadOnlyMemory < byte > eventMetadata ) {
20
- try {
21
- using var doc = JsonDocument . Parse ( eventMetadata ) ;
22
-
23
- if ( ! doc . RootElement . TryGetProperty ( TracingConstants . Metadata . TraceId , out var traceId )
24
- || ! doc . RootElement . TryGetProperty ( TracingConstants . Metadata . SpanId , out var spanId ) )
25
- return TracingMetadata . None ;
26
-
27
- return new TracingMetadata ( traceId . GetString ( ) , spanId . GetString ( ) ) ;
28
- }
29
- catch ( JsonException ) {
20
+ var reader = new Utf8JsonReader ( eventMetadata . Span ) ;
21
+
22
+ if ( ! JsonDocument . TryParseValue ( ref reader , out var doc )
23
+ || ! doc . RootElement . TryGetProperty ( TracingConstants . Metadata . TraceId , out var traceId )
24
+ || ! doc . RootElement . TryGetProperty ( TracingConstants . Metadata . SpanId , out var spanId ) )
30
25
return TracingMetadata . None ;
31
- }
26
+
27
+ return new TracingMetadata ( traceId . GetString ( ) , spanId . GetString ( ) ) ;
32
28
}
33
29
34
30
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
You can’t perform that action at this time.
0 commit comments