-
Notifications
You must be signed in to change notification settings - Fork 145
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Tracer] Set _dd.base_service
tag whenever a span's service name is different than the default value (DD_SERVICE
)
#5502
Conversation
Datadog ReportBranch report: ✅ 0 Failed, 332946 Passed, 1545 Skipped, 43m 40.13s Wall Time |
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing the following branches/commits: Execution-time benchmarks measure the whole time it takes to execute a program. And are intended to measure the one-off costs. Cases where the execution time results for the PR are worse than latest master results are shown in red. The following thresholds were used for comparing the execution times:
Note that these results are based on a single point-in-time result for each branch. For full results, see the dashboard. Graphs show the p99 interval based on the mean and StdDev of the test run, as well as the mean value of the run (shown as a diamond below the graph). gantt
title Execution time (ms) FakeDbCommand (.NET Framework 4.6.2)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (70ms) : 67, 72
. : milestone, 70,
master - mean (71ms) : 68, 74
. : milestone, 71,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (1,107ms) : 1084, 1129
. : milestone, 1107,
master - mean (1,105ms) : 1089, 1122
. : milestone, 1105,
gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (109ms) : 106, 112
. : milestone, 109,
master - mean (110ms) : 106, 113
. : milestone, 110,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (769ms) : 754, 784
. : milestone, 769,
master - mean (770ms) : 755, 784
. : milestone, 770,
gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (93ms) : 90, 95
. : milestone, 93,
master - mean (93ms) : 89, 97
. : milestone, 93,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (723ms) : 710, 736
. : milestone, 723,
master - mean (731ms) : 712, 750
. : milestone, 731,
gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.6.2)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (191ms) : 187, 194
. : milestone, 191,
master - mean (190ms) : 188, 193
. : milestone, 190,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (1,200ms) : 1168, 1231
. : milestone, 1200,
master - mean (1,198ms) : 1177, 1219
. : milestone, 1198,
gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (276ms) : 272, 280
. : milestone, 276,
master - mean (277ms) : 272, 281
. : milestone, 277,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (944ms) : 921, 967
. : milestone, 944,
master - mean (940ms) : 924, 956
. : milestone, 940,
gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5502) - mean (265ms) : 261, 268
. : milestone, 265,
master - mean (265ms) : 262, 269
. : milestone, 265,
section CallTarget+Inlining+NGEN
This PR (5502) - mean (926ms) : 905, 946
. : milestone, 926,
master - mean (925ms) : 908, 942
. : milestone, 925,
|
Benchmarks Report for tracer 🐌Benchmarks for #5502 compared to master:
The following thresholds were used for comparing the benchmark speeds:
Allocation changes below 0.5% are ignored. Benchmark detailsBenchmarks.Trace.ActivityBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AspNetCoreBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.DbCommandBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.ElasticsearchBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.GraphQLBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.HttpClientBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.ILoggerBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.Log4netBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.NLogBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.RedisBenchmark - Faster 🎉 Same allocations ✔️
|
Benchmark | base/diff | Base Median (ns) | Diff Median (ns) | Modality |
---|---|---|---|---|
Benchmarks.Trace.RedisBenchmark.SendReceive‑net6.0 | 1.122 | 1,422.16 | 1,267.45 |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | SendReceive |
net6.0 | 1.42μs | 1.14ns | 4.43ns | 0.0163 | 0 | 0 | 1.14 KB |
master | SendReceive |
netcoreapp3.1 | 1.79μs | 0.988ns | 3.83ns | 0.0152 | 0 | 0 | 1.14 KB |
master | SendReceive |
net472 | 2.05μs | 0.968ns | 3.62ns | 0.183 | 0 | 0 | 1.16 KB |
#5502 | SendReceive |
net6.0 | 1.27μs | 0.522ns | 1.95ns | 0.0158 | 0 | 0 | 1.14 KB |
#5502 | SendReceive |
netcoreapp3.1 | 1.72μs | 1.19ns | 4.61ns | 0.0155 | 0 | 0 | 1.14 KB |
#5502 | SendReceive |
net472 | 2.11μs | 0.625ns | 2.34ns | 0.183 | 0.00107 | 0 | 1.16 KB |
Benchmarks.Trace.SerilogBenchmark - Same speed ✔️ Same allocations ✔️
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | EnrichedLog |
net6.0 | 2.76μs | 1.41ns | 5.46ns | 0.022 | 0 | 0 | 1.6 KB |
master | EnrichedLog |
netcoreapp3.1 | 4μs | 3.49ns | 13.5ns | 0.022 | 0 | 0 | 1.65 KB |
master | EnrichedLog |
net472 | 4.48μs | 7.98ns | 29.9ns | 0.322 | 0 | 0 | 2.04 KB |
#5502 | EnrichedLog |
net6.0 | 2.63μs | 0.776ns | 3ns | 0.0224 | 0 | 0 | 1.6 KB |
#5502 | EnrichedLog |
netcoreapp3.1 | 3.94μs | 0.991ns | 3.71ns | 0.0222 | 0 | 0 | 1.65 KB |
#5502 | EnrichedLog |
net472 | 4.32μs | 1.33ns | 4.97ns | 0.324 | 0 | 0 | 2.04 KB |
Benchmarks.Trace.SpanBenchmark - Same speed ✔️ Same allocations ✔️
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | StartFinishSpan |
net6.0 | 405ns | 0.236ns | 0.851ns | 0.0081 | 0 | 0 | 576 B |
master | StartFinishSpan |
netcoreapp3.1 | 607ns | 0.687ns | 2.66ns | 0.00758 | 0 | 0 | 576 B |
master | StartFinishSpan |
net472 | 687ns | 0.283ns | 1.09ns | 0.0917 | 0 | 0 | 578 B |
master | StartFinishScope |
net6.0 | 475ns | 0.204ns | 0.788ns | 0.00969 | 0 | 0 | 696 B |
master | StartFinishScope |
netcoreapp3.1 | 720ns | 0.366ns | 1.37ns | 0.00934 | 0 | 0 | 696 B |
master | StartFinishScope |
net472 | 834ns | 2.2ns | 7.93ns | 0.105 | 0 | 0 | 658 B |
#5502 | StartFinishSpan |
net6.0 | 396ns | 0.153ns | 0.591ns | 0.00799 | 0 | 0 | 576 B |
#5502 | StartFinishSpan |
netcoreapp3.1 | 602ns | 0.242ns | 0.939ns | 0.00786 | 0 | 0 | 576 B |
#5502 | StartFinishSpan |
net472 | 696ns | 0.34ns | 1.32ns | 0.0916 | 0 | 0 | 578 B |
#5502 | StartFinishScope |
net6.0 | 482ns | 0.207ns | 0.775ns | 0.00985 | 0 | 0 | 696 B |
#5502 | StartFinishScope |
netcoreapp3.1 | 680ns | 0.415ns | 1.61ns | 0.00919 | 0 | 0 | 696 B |
#5502 | StartFinishScope |
net472 | 891ns | 1.04ns | 4.03ns | 0.104 | 0 | 0 | 658 B |
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed ✔️ Same allocations ✔️
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | RunOnMethodBegin |
net6.0 | 681ns | 0.405ns | 1.57ns | 0.00964 | 0 | 0 | 696 B |
master | RunOnMethodBegin |
netcoreapp3.1 | 927ns | 1.5ns | 5.81ns | 0.00928 | 0 | 0 | 696 B |
master | RunOnMethodBegin |
net472 | 1.2μs | 0.292ns | 1.13ns | 0.104 | 0 | 0 | 658 B |
#5502 | RunOnMethodBegin |
net6.0 | 674ns | 0.199ns | 0.77ns | 0.00979 | 0 | 0 | 696 B |
#5502 | RunOnMethodBegin |
netcoreapp3.1 | 964ns | 0.228ns | 0.854ns | 0.00959 | 0 | 0 | 696 B |
#5502 | RunOnMethodBegin |
net472 | 1.09μs | 0.519ns | 2.01ns | 0.104 | 0 | 0 | 658 B |
Throughput/Crank Report ⚡Throughput results for AspNetCoreSimpleController comparing the following branches/commits: Cases where throughput results for the PR are worse than latest master (5% drop or greater), results are shown in red. Note that these results are based on a single point-in-time result for each branch. For full results, see one of the many, many dashboards! gantt
title Throughput Linux x64 (Total requests)
dateFormat X
axisFormat %s
section Baseline
This PR (5502) (10.923M) : 0, 10922868
master (10.963M) : 0, 10963121
benchmarks/2.9.0 (11.081M) : 0, 11080577
section Automatic
This PR (5502) (7.186M) : 0, 7185518
master (7.240M) : 0, 7240324
benchmarks/2.9.0 (7.732M) : 0, 7732233
section Trace stats
master (7.497M) : 0, 7497476
section Manual
master (10.963M) : 0, 10962740
section Manual + Automatic
This PR (5502) (6.639M) : 0, 6638512
master (6.588M) : 0, 6588199
section DD_TRACE_ENABLED=0
master (10.131M) : 0, 10130852
gantt
title Throughput Linux arm64 (Total requests)
dateFormat X
axisFormat %s
section Baseline
This PR (5502) (9.846M) : 0, 9845943
master (9.533M) : 0, 9533153
benchmarks/2.9.0 (9.798M) : 0, 9798067
section Automatic
This PR (5502) (6.652M) : 0, 6652305
master (6.402M) : 0, 6401920
section Trace stats
master (6.896M) : 0, 6896336
section Manual
master (9.548M) : 0, 9547815
section Manual + Automatic
This PR (5502) (6.236M) : 0, 6235921
master (6.126M) : 0, 6125610
section DD_TRACE_ENABLED=0
master (8.964M) : 0, 8964389
gantt
title Throughput Windows x64 (Total requests)
dateFormat X
axisFormat %s
section Baseline
This PR (5502) (10.050M) : 0, 10049600
master (10.182M) : 0, 10181777
benchmarks/2.9.0 (10.067M) : 0, 10067315
section Automatic
This PR (5502) (6.619M) : 0, 6619342
master (6.913M) : 0, 6912891
benchmarks/2.9.0 (7.552M) : 0, 7552193
section Trace stats
master (7.478M) : 0, 7477860
section Manual
master (10.080M) : 0, 10080257
section Manual + Automatic
This PR (5502) (6.309M) : 0, 6308976
master (6.307M) : 0, 6307227
section DD_TRACE_ENABLED=0
master (9.485M) : 0, 9485427
|
Snapshots difference summaryThe following differences have been observed in committed snapshots. It is meant to help the reviewer. 2 occurrences of : + "_dd.base_service": "AspNetCoreSmokeTest"
19 occurrences of : + _dd.base_service: Samples.Aerospike
16 occurrences of : + _dd.base_service: Samples.AWS.DynamoDBv2
32 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.AWS.DynamoDBv2
572 occurrences of : + language: dotnet,
4 occurrences of : + _dd.base_service: Samples.AWS.Kinesis
8 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.AWS.Kinesis
37 occurrences of : + _dd.base_service: Samples.AWS.Lambda
1 occurrences of : + _dd.base_service: Samples.Amazon.Lambda.RuntimeSupport
7 occurrences of : + _dd.base_service: Samples.AWS.SimpleNotificationService
4 occurrences of : - runtime-id: Guid_1,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ runtime-id: Guid_1
8 occurrences of : - _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ _dd.base_service: Samples.AWS.SimpleNotificationService
38 occurrences of : - _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet,
64 occurrences of : + _dd.base_service: Samples.AWS.SQS
2 occurrences of : - aws.requestId: Guid_Empty,
+ aws.requestId: Guid_2,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - aws.requestId: Guid_Empty,
+ aws.requestId: Guid_3,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_4,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_5,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_6,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_7,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_8,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_9,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_10,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_11,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_12,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_13,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_14,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_15,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_16,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
1 occurrences of : - Resource: SQS.SendMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_24,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_25,
- Name: sqs.request,
- Resource: SQS.DeleteMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_26,
- Name: sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_17,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - SpanId: Id_27,
+ SpanId: Id_24,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_18,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
1 occurrences of : - SpanId: Id_28,
- Name: sqs.request,
- Resource: SQS.SendMessageBatch,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_29,
+ SpanId: Id_25,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_30,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_31,
- Name: sqs.request,
- Resource: SQS.DeleteMessageBatch,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_19,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - SpanId: Id_32,
+ SpanId: Id_26,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_20,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - SpanId: Id_33,
+ SpanId: Id_27,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_21,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - SpanId: Id_34,
+ SpanId: Id_28,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_22,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - SpanId: Id_35,
+ SpanId: Id_29,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_23,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_37,
+ TraceId: Id_30,
+ SpanId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_38,
+ TraceId: Id_30,
+ SpanId: Id_32,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_24,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_39,
+ TraceId: Id_30,
+ SpanId: Id_33,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_25,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_40,
+ TraceId: Id_30,
+ SpanId: Id_34,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : + _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_41,
+ TraceId: Id_30,
+ SpanId: Id_35,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : + _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_42,
+ TraceId: Id_30,
+ SpanId: Id_36,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : + _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_43,
+ TraceId: Id_30,
+ SpanId: Id_37,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : + _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_44,
+ TraceId: Id_30,
+ SpanId: Id_38,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : + _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_45,
+ TraceId: Id_30,
+ SpanId: Id_39,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_26,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_46,
+ TraceId: Id_30,
+ SpanId: Id_40,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_27,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_47,
+ TraceId: Id_30,
+ SpanId: Id_41,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_28,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_48,
+ TraceId: Id_30,
+ SpanId: Id_42,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_29,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_49,
+ TraceId: Id_30,
+ SpanId: Id_43,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_30,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_50,
+ TraceId: Id_30,
+ SpanId: Id_44,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_31,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_51,
+ TraceId: Id_30,
+ SpanId: Id_45,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_32,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_52,
+ TraceId: Id_30,
+ SpanId: Id_46,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_33,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_53,
+ TraceId: Id_30,
+ SpanId: Id_47,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_34,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_54,
+ TraceId: Id_30,
+ SpanId: Id_48,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_35,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_55,
+ TraceId: Id_30,
+ SpanId: Id_49,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_36,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_56,
+ TraceId: Id_30,
+ SpanId: Id_50,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_37,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_57,
+ TraceId: Id_30,
+ SpanId: Id_51,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_38,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_58,
+ TraceId: Id_30,
+ SpanId: Id_52,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_39,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_59,
+ TraceId: Id_30,
+ SpanId: Id_53,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_40,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_60,
+ TraceId: Id_30,
+ SpanId: Id_54,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_41,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_61,
+ TraceId: Id_30,
+ SpanId: Id_55,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_42,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_62,
+ TraceId: Id_30,
+ SpanId: Id_56,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_43,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_63,
+ TraceId: Id_30,
+ SpanId: Id_57,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_44,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_64,
+ TraceId: Id_30,
+ SpanId: Id_58,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_45,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_65,
+ TraceId: Id_30,
+ SpanId: Id_59,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_46,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_66,
+ TraceId: Id_30,
+ SpanId: Id_60,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_47,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_67,
+ TraceId: Id_30,
+ SpanId: Id_61,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_48,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_68,
+ TraceId: Id_30,
+ SpanId: Id_62,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_49,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_69,
+ TraceId: Id_30,
+ SpanId: Id_63,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_50,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue,
[...]
+ _dd.base_service: Samples.AWS.SQS
[...]
- TraceId: Id_36,
- SpanId: Id_70,
+ TraceId: Id_30,
+ SpanId: Id_64,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_51,
[...]
+ aws_service: SQS,
[...]
+ queuename: MySyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
1 occurrences of : - Resource: SQS.SendMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_24,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_25,
- Name: sqs.request,
- Resource: SQS.DeleteMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_26,
- Name: sqs.request,
1 occurrences of : - SpanId: Id_28,
- Name: sqs.request,
- Resource: SQS.SendMessageBatch,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_29,
+ SpanId: Id_25,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_30,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- runtime-id: Guid_1,
- span.kind: client
- },
- Metrics: {
- _dd.top_level: 1.0
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_31,
- Name: sqs.request,
- Resource: SQS.DeleteMessageBatch,
- Service: Samples.AWS.SQS-aws-sqs,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_19,
[...]
+ aws_service: SQS,
[...]
+ queuename: MyAsyncSQSQueue2,
[...]
+ _dd.base_service: Samples.AWS.SQS
2 occurrences of : - Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : - aws.requestId: Guid_Empty,
+ aws.requestId: Guid_2,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : - aws.requestId: Guid_Empty,
+ aws.requestId: Guid_3,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
2 occurrences of : - Name: sqs.request,
+ Name: aws.sqs.send,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_4,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_5,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue,
+ span.kind: consumer
[...]
- Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_6,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.send,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_7,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_8,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue2,
+ span.kind: consumer
[...]
- Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_9,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.send,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_10,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_11,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue,
+ span.kind: consumer
[...]
- Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_12,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.send,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_13,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_14,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue2,
+ span.kind: consumer
[...]
- Name: sqs.request,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_15,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
+ Name: aws.sqs.send,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_16,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
- Resource: SQS.SendMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_24,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_25,
- Name: sqs.request,
- Resource: SQS.DeleteMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_26,
- Name: sqs.request,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_17,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue,
+ span.kind: consumer
[...]
- SpanId: Id_27,
- Name: sqs.request,
+ SpanId: Id_24,
+ Name: aws.sqs.request,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_18,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_28,
- Name: sqs.request,
- Resource: SQS.SendMessageBatch,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_29,
- Name: sqs.request,
+ SpanId: Id_25,
+ Name: aws.sqs.send,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_30,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_31,
- Name: sqs.request,
- Resource: SQS.DeleteMessageBatch,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_19,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_32,
- Name: sqs.request,
+ SpanId: Id_26,
+ Name: aws.sqs.process,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_20,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MyAsyncSQSQueue2,
+ span.kind: consumer
[...]
- SpanId: Id_33,
- Name: sqs.request,
+ SpanId: Id_27,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_21,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_34,
- Name: sqs.request,
+ SpanId: Id_28,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_22,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_35,
- Name: sqs.request,
+ SpanId: Id_29,
+ Name: aws.sqs.request,
2 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_23,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_37,
+ TraceId: Id_30,
+ SpanId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_38,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_32,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_24,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_39,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_33,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_25,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_40,
+ TraceId: Id_30,
+ SpanId: Id_34,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_41,
+ TraceId: Id_30,
+ SpanId: Id_35,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_42,
+ TraceId: Id_30,
+ SpanId: Id_36,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_43,
+ TraceId: Id_30,
+ SpanId: Id_37,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_44,
+ TraceId: Id_30,
+ SpanId: Id_38,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
2 occurrences of : - TraceId: Id_36,
- SpanId: Id_45,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_39,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_26,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_46,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_40,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_27,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_47,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_41,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_28,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_48,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_42,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_29,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_49,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_43,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_30,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue2,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_50,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_44,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_31,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_51,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_45,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_32,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_52,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_46,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_33,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_53,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_47,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_34,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_54,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_48,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_35,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_55,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_49,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_36,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue2,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_56,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_50,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_37,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_57,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_51,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_38,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_58,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_52,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_39,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_59,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_53,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_40,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_60,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_54,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_41,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_61,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_55,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_42,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_62,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_56,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_43,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_63,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_57,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_44,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_64,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_58,
+ Name: aws.sqs.send,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_45,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_65,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_59,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_46,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue2,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_66,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_60,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_47,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_67,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_61,
+ Name: aws.sqs.process,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_48,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ queuename: MySyncSQSQueue2,
+ span.kind: consumer
[...]
- TraceId: Id_36,
- SpanId: Id_68,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_62,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_49,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_69,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_63,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_50,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue,
+ queuename: MySyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- TraceId: Id_36,
- SpanId: Id_70,
- Name: sqs.request,
+ TraceId: Id_30,
+ SpanId: Id_64,
+ Name: aws.sqs.request,
[...]
- ParentId: Id_37,
+ ParentId: Id_31,
[...]
+ aws.queue.name: MySyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_51,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MySyncSQSQueue2,
+ queuename: MySyncSQSQueue2,
+ span.kind: client,
+ _dd.peer.service.source: queuename
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_16,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- Name: sqs.request,
- Resource: SQS.SendMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_24,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_25,
- Name: sqs.request,
- Resource: SQS.DeleteMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_26,
- Name: sqs.request,
+ Name: aws.sqs.process,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue,
[...]
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_18,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_28,
- Name: sqs.request,
- Resource: SQS.SendMessageBatch,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: SendMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
+ peer.service: MyAsyncSQSQueue,
+ queuename: MyAsyncSQSQueue,
+ span.kind: client,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_29,
- Name: sqs.request,
+ SpanId: Id_25,
+ Name: aws.sqs.send,
1 occurrences of : + aws.queue.name: MyAsyncSQSQueue2,
[...]
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_30,
- Name: sqs.request,
- Resource: SQS.ReceiveMessage,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: ReceiveMessage,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
- aws.service: SQS,
- component: aws-sdk,
- env: integration_tests,
- http.method: POST,
- http.status_code: 200,
- http.url: http://localhost:00000/,
- language: dotnet,
- span.kind: client
- }
- },
- {
- TraceId: Id_1,
- SpanId: Id_31,
- Name: sqs.request,
- Resource: SQS.DeleteMessageBatch,
- Service: Samples.AWS.SQS,
- Type: http,
- ParentId: Id_2,
- Tags: {
- aws.agent: dotnet-aws-sdk,
- aws.operation: DeleteMessageBatch,
- aws.queue.url: http://localhost:00000/000000000000/MyAsyncSQSQueue2,
- aws.requestId: Guid_Empty,
+ aws.requestId: Guid_19,
[...]
+ aws_service: SQS,
[...]
- span.kind: client
+ peer.service: MyAsyncSQSQueue2,
+ queuename: MyAsyncSQSQueue2,
+ span.kind: producer,
+ _dd.peer.service.source: queuename
[...]
- SpanId: Id_32,
- Name: sqs.request,
+ SpanId: Id_26,
+ Name: aws.sqs.process,
10 occurrences of : + _dd.base_service: AzureFunctionsAllTriggers
14 occurrences of : - span.kind: client,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ span.kind: client
66 occurrences of : + _dd.base_service: Samples.Couchbase3
590 occurrences of : + _dd.base_service: Samples.Elasticsearch
22 occurrences of : + _dd.base_service: Samples.GraphQL
22 occurrences of : + _dd.base_service: Samples.GraphQL3
11 occurrences of : + _dd.base_service: Samples.GraphQL4
16 occurrences of : + _dd.base_service: Samples.GraphQL7
45 occurrences of : + _dd.base_service: Samples.GrpcDotNet
14 occurrences of : + _dd.base_service: Samples.GrpcLegacy
14 occurrences of : + _dd.base_service: Samples.HotChocolate
6 occurrences of : + _dd.base_service: Samples.ManualInstrumentation
1 occurrences of : + _dd.base_service: updated-name
49 occurrences of : + _dd.base_service: Samples.MongoDB
2 occurrences of : - Name: Main(),
+ Name: internal,
6 occurrences of : - version: 1.0.0,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ version: 1.0.0
2 occurrences of : - Name: sync-calls,
+ Name: internal,
2 occurrences of : - version: 1.0.0,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ version: 1.0.0
[...]
- Name: async-calls,
+ Name: internal,
2 occurrences of : - version: 1.0.0,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ version: 1.0.0
[...]
- Name: sync-calls,
+ Name: internal,
17 occurrences of : - _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ _dd.base_service: Samples.MongoDB
1 occurrences of : - Name: sync-calls-execute,
+ Name: internal,
2 occurrences of : - version: 1.0.0,
- _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet
+ version: 1.0.0
[...]
- Name: async-calls-execute,
+ Name: internal,
1 occurrences of : - _dd.git.commit.sha: aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbb,
- _dd.git.repository_url: https://github.com/DataDog/dd-trace-dotnet,
[...]
- Name: sync-calls-execute,
+ Name: internal,
294 occurrences of : + _dd.base_service: Samples.MySql,
294 occurrences of : + _dd.base_service: Samples.MySql
147 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.MySql,
147 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.MySql
147 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.Npgsql
147 occurrences of : + _dd.base_service: Samples.Npgsql,
147 occurrences of : + _dd.base_service: Samples.Npgsql
91 occurrences of : + language: dotnet,
[...]
+ _dd.base_service: Samples.OracleMDA
53 occurrences of : + _dd.base_service: Samples.ProcessStart
228 occurrences of : + _dd.base_service: Samples.RabbitMQ
8 occurrences of : + _dd.base_service: Samples.Remoting
13 occurrences of : + _dd.base_service: Samples.ServiceStack.Redis
609 occurrences of : + _dd.base_service: Samples.StackExchange.Redis
168 occurrences of : + _dd.base_service: Samples.SqlServer,
168 occurrences of : + _dd.base_service: Samples.SqlServer
2 occurrences of : + _dd.base_service: Samples.Telemetry
2 occurrences of : + _dd.base_service: Samples.Yarp.DistributedTracing
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work - I feel your pain on the snapshots 😅
One slight concern: you "only" touched 70 files here, but we have nearly 1700 snapshots - how confident are you that those snapshots definitely don't need updating vs just not being run in the normal PR tests? For example, we don't run all TFMs or all package versions, and some of those have snapshots that may need updating...
tracer/test/Datadog.Trace.Tests/Agent/MessagePack/SpanMessagePackFormatterTests.cs
Outdated
Show resolved
Hide resolved
Yeah makes sense. I'd expect there to be more as well. I'll try and run a full build here and update them from that. |
ServiceName
is not default_dd.base_service
whenever a span's service name is different than the default service name
tracer/src/Datadog.Trace/Agent/MessagePack/SpanMessagePackFormatter.cs
Outdated
Show resolved
Hide resolved
tracer/src/Datadog.Trace/Agent/MessagePack/SpanMessagePackFormatter.cs
Outdated
Show resolved
Hide resolved
_dd.base_service
whenever a span's service name is different than the default service name_dd.base_service
whenever a span's service name is different than the default value (DD_SERVICE
)
_dd.base_service
whenever a span's service name is different than the default value (DD_SERVICE
)_dd.base_service
tag whenever a span's service name is different than the default value (DD_SERVICE
)
_dd.base_service
tag whenever a span's service name is different than the default value (DD_SERVICE
)_dd.base_service
tag whenever a span's service name is different than the default value (DD_SERVICE
)
8b4f455
to
4f82c3e
Compare
Datadog ReportBranch report: ✅ 0 Failed, 349611 Passed, 2100 Skipped, 25h 59m 29.21s Total Time |
d5ca413
to
d121308
Compare
Co-authored-by: Andrew Lock <[email protected]>
Co-authored-by: Andrew Lock <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ran this locally in snapshots
grep -rP "Service: \S+\.\S+-\S+" . | awk -F: '{print $1}' | sort -u
As I wasn't confident that all of the snapshots were updated and just went one-by-one
AwsDynamoDbTests.NetFramework.SchemaV0.verified.txt - DONE
AwsKinesisTests.NetFramework.SchemaV0.verified.txt - DONE
AwsSnsTests.NetFramework.SchemaV0.verified.txt - DONE
AwsSqsTests.NetFramework.SchemaV0.pre3_7_300.verified.txt - DONE
AwsSqsTests.NetFramework.SchemaV0.verified.txt - DONE
MySqlCommandTests.Net.SchemaV0.verified.txt - REMOVED
MySqlCommandTests.Net462.SchemaV0.verified.txt - REMOVED
MySqlCommandTests.Net462.tagged.SchemaV0.verified.txt - DONE
MySqlCommandTests.Net462.untagged.SchemaV0.verified.txt - DONE
MySqlCommandTests.NetCore.SchemaV0.verified.txt - REMOVED
NpgsqlCommandTests.Net462.untagged.SchemaV0.verified.txt - DONE
OracleTests.SchemaV0.verified.txt - DONE
ProcessStartCommandsCollectionTests.SubmitsTracesOsx.SchemaV0.verified.txt - DONE
ProcessStartTests.SubmitsTracesOsx.SchemaV0.verified.txt - DONE
StackExchangeRedisTests.V1_0_414.SchemaV0.verified.txt - REMOVED
StackExchangeRedisTests.V1_2_0.SchemaV0.verified.txt - REMOVED
StackExchangeRedisTests.V2_0_495.SchemaV0.verified.txt - REMOVED
SystemDataSqlClientTests.SchemaV0.disabled.verified.txt - REMOVED
SystemDataSqlClientTests.SchemaV0.enabled.verified.txt - REMOVED
I'll try to figure out how to test these tomorrow
All snapshots will have `tagged` or `untagged` in the filename.
I don't think we test these versions.
With this the .NET Framework ones worked, but then v6 ones would crash. So reverting - was able to update the snapshots but will need to fix this at some point in the future.
… different than the default value (`DD_SERVICE`) (#5502) ## Summary of changes This fixes the setting of the `ServiceName` so that instead of just adding a `_dd.base_service` tag when `Span.ServiceName` is overridden that it'll be computed during MessagePack serialization and checked to see if it is different than the default value (aka `DD_SERVICE`). If it is different from the default then we add the default name as `_dd.base_service` ## Reason for change We want to record the base service name after the service name has been updated. ## Implementation details - Remove the setting of this in `Span.ServiceName` - Add check in `SpanMessagePackFormatter` for that. ## Test coverage - Updated snapshots ## Other details <!-- Fixes #{issue} --> <!--⚠️ Note: where possible, please obtain 2 approvals prior to merging. Unless CODEOWNERS specifies otherwise, for external teams it is typically best to have one review from a team member, and one review from apm-dotnet. Trivial changes do not require 2 reviews. --> --------- Co-authored-by: Andrew Lock <[email protected]>
…e name is different than the default value (DD_SERVICE) (#5502 => v2) (#6122) ## Summary of changes This fixes the setting of the `ServiceName` so that instead of just adding a `_dd.base_service` tag when `Span.ServiceName` is overridden that it'll be computed during MessagePack serialization and checked to see if it is different than the default value (aka `DD_SERVICE`). If it is different from the default then we add the default name as `_dd.base_service` ## Reason for change We want to record the base service name after the service name has been updated. ## Implementation details - Remove the setting of this in `Span.ServiceName` - Add check in `SpanMessagePackFormatter` for that. ## Test coverage - Updated snapshots ## Other details Backport of #5502 <!-- Fixes #{issue} --> <!--⚠️ Note: where possible, please obtain 2 approvals prior to merging. Unless CODEOWNERS specifies otherwise, for external teams it is typically best to have one review from a team member, and one review from apm-dotnet. Trivial changes do not require 2 reviews. -->
Summary of changes
This fixes the setting of the
ServiceName
so that instead of just adding a_dd.base_service
tag whenSpan.ServiceName
is overridden that it'll be computed during MessagePack serialization and checked to see if it is different than the default value (akaDD_SERVICE
).If it is different from the default then we add the default name as
_dd.base_service
Reason for change
We want to record the base service name after the service name has been updated.
Implementation details
Span.ServiceName
SpanMessagePackFormatter
for that.Test coverage
Other details
Backport to 2.x in #6122