-
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] Updating GrpcLegacy Sample App and Tests #5264
Conversation
Snapshots difference summaryThe following differences have been observed in committed snapshots. It is meant to help the reviewer. 2 occurrences of : - Resource: SendVerySlowRequest,
+ Resource: SendVerySlowRequestAsync,
1 occurrences of : - },
- {
- TraceId: Id_57,
- SpanId: Id_58,
- Name: internal,
- Resource: SendVerySlowRequestAsync,
- Service: Samples.GrpcLegacy,
- Type: custom,
- Tags: {
- env: integration_tests,
- language: dotnet,
- otel.library.name: Samples.Grpc,
- otel.status_code: STATUS_CODE_UNSET,
- otel.trace_id: Guid_16,
- runtime-id: Guid_2,
- span.kind: internal
- },
- Metrics: {
- process_id: 0,
- _dd.agent_psr: 1.0,
- _dd.top_level: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
- },
- {
- TraceId: Id_57,
- SpanId: Id_59,
- Name: grpc.request,
- Resource: /greet.tester.Greeter/VerySlow,
- Service: Samples.GrpcLegacy-grpc-client,
- Type: grpc,
- ParentId: Id_58,
- Error: 1,
- Tags: {
- clientmeta: other-client-value,
- component: Grpc,
- env: integration_tests,
- error.msg: Deadline Exceeded,
- error.type: Grpc.Core.Internal.CoreErrorDetailException,
- grpc.method.kind: unary,
- grpc.method.name: VerySlow,
- grpc.method.package: greet.tester,
- grpc.method.path: /greet.tester.Greeter/VerySlow,
- grpc.method.service: Greeter,
- grpc.request.metadata.client-value1: some-client-value,
- grpc.status.code: 4,
- out.host: 127.0.0.1,
- peer.hostname: 127.0.0.1,
- runtime-id: Guid_2,
- span.kind: client
- },
- Metrics: {
- process_id: 0,
- _dd.agent_psr: 1.0,
- _dd.top_level: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
- },
- {
- TraceId: Id_57,
- SpanId: Id_60,
- Name: grpc.request,
- Resource: /greet.tester.Greeter/VerySlow,
- Service: Samples.GrpcLegacy,
- Type: grpc,
- ParentId: Id_59,
- Error: 1,
- Tags: {
- clientmeta: other-client-value,
- component: Grpc,
- env: integration_tests,
- error.msg: Deadline Exceeded,
- grpc.method.kind: unary,
- grpc.method.name: VerySlow,
- grpc.method.package: greet.tester,
- grpc.method.path: /greet.tester.Greeter/VerySlow,
- grpc.method.service: Greeter,
- grpc.request.metadata.client-value1: some-client-value,
- grpc.response.metadata.server-value1: some-server-value,
- grpc.status.code: 4,
- language: dotnet,
- runtime-id: Guid_2,
- servermeta: other-server-value,
- span.kind: server
- },
- Metrics: {
- process_id: 0,
- _dd.top_level: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
1 occurrences of : - },
- {
- TraceId: Id_57,
- SpanId: Id_58,
- Name: internal,
- Resource: SendVerySlowRequestAsync,
- Service: Samples.GrpcLegacy,
- Type: custom,
- Tags: {
- env: integration_tests,
- language: dotnet,
- otel.library.name: Samples.Grpc,
- otel.status_code: STATUS_CODE_UNSET,
- otel.trace_id: Guid_16,
- runtime-id: Guid_2,
- span.kind: internal
- },
- Metrics: {
- process_id: 0,
- _dd.agent_psr: 1.0,
- _dd.top_level: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
- },
- {
- TraceId: Id_57,
- SpanId: Id_59,
- Name: grpc.client.request,
- Resource: /greet.tester.Greeter/VerySlow,
- Service: Samples.GrpcLegacy,
- Type: grpc,
- ParentId: Id_58,
- Error: 1,
- Tags: {
- clientmeta: other-client-value,
- component: Grpc,
- env: integration_tests,
- error.msg: Deadline Exceeded,
- error.type: Grpc.Core.Internal.CoreErrorDetailException,
- grpc.method.kind: unary,
- grpc.method.name: VerySlow,
- grpc.method.package: greet.tester,
- grpc.method.path: /greet.tester.Greeter/VerySlow,
- grpc.method.service: Greeter,
- grpc.request.metadata.client-value1: some-client-value,
- grpc.status.code: 4,
- out.host: 127.0.0.1,
- peer.hostname: 127.0.0.1,
- peer.service: Greeter,
- span.kind: client,
- _dd.peer.service.source: rpc.service
- },
- Metrics: {
- process_id: 0,
- _dd.agent_psr: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
- },
- {
- TraceId: Id_57,
- SpanId: Id_60,
- Name: grpc.server.request,
- Resource: /greet.tester.Greeter/VerySlow,
- Service: Samples.GrpcLegacy,
- Type: grpc,
- ParentId: Id_59,
- Error: 1,
- Tags: {
- clientmeta: other-client-value,
- component: Grpc,
- env: integration_tests,
- error.msg: Deadline Exceeded,
- grpc.method.kind: unary,
- grpc.method.name: VerySlow,
- grpc.method.package: greet.tester,
- grpc.method.path: /greet.tester.Greeter/VerySlow,
- grpc.method.service: Greeter,
- grpc.request.metadata.client-value1: some-client-value,
- grpc.response.metadata.server-value1: some-server-value,
- grpc.status.code: 4,
- language: dotnet,
- runtime-id: Guid_2,
- servermeta: other-server-value,
- span.kind: server
- },
- Metrics: {
- process_id: 0,
- _dd.top_level: 1.0,
- _dd.tracer_kr: 1.0,
- _sampling_priority_v1: 1.0
- }
|
Datadog ReportBranch report: ✅ 0 Failed, 335400 Passed, 1590 Skipped, 42m 30.65s 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 (5264) - mean (74ms) : 65, 83
. : milestone, 74,
master - mean (74ms) : 66, 82
. : milestone, 74,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (988ms) : 964, 1013
. : milestone, 988,
master - mean (995ms) : 967, 1024
. : milestone, 995,
gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5264) - mean (112ms) : 108, 115
. : milestone, 112,
master - mean (111ms) : 107, 115
. : milestone, 111,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (718ms) : 695, 742
. : milestone, 718,
master - mean (716ms) : 695, 736
. : milestone, 716,
gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5264) - mean (94ms) : 91, 96
. : milestone, 94,
master - mean (94ms) : 91, 97
. : milestone, 94,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (668ms) : 645, 690
. : milestone, 668,
master - mean (675ms) : 648, 701
. : milestone, 675,
gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.6.2)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5264) - mean (188ms) : 185, 191
. : milestone, 188,
master - mean (188ms) : 183, 192
. : milestone, 188,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (1,066ms) : 1042, 1090
. : milestone, 1066,
master - mean (1,050ms) : 1026, 1074
. : milestone, 1050,
gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5264) - mean (270ms) : 266, 273
. : milestone, 270,
master - mean (269ms) : 262, 275
. : milestone, 269,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (868ms) : 845, 892
. : milestone, 868,
master - mean (860ms) : 829, 891
. : milestone, 860,
gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (5264) - mean (260ms) : 256, 264
. : milestone, 260,
master - mean (257ms) : 252, 263
. : milestone, 257,
section CallTarget+Inlining+NGEN
This PR (5264) - mean (847ms) : 821, 873
. : milestone, 847,
master - mean (842ms) : 817, 867
. : milestone, 842,
|
Summary of changes
Removing the not Async
SendVerySlowRequest
which seems to be problematic when ran inmaster
, updated the test and snapshots to account for such change.Reason for change
After taking a look at the failing tests in
master
we found that the errors we saw, either missing span or missing tags on that span which sometimes goes missing, where always as a result of theSendVerySlowRequest(client)
run.As opposed to trying updating the timeout or checking why the server could be hitting this error, since we already know is kinda overloaded, instead will remove the test case instead which should remove the daily flakes this test gets (can come back to it if other issues arise).