Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add configurable business tracing profile #90
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
Uh oh!
There was an error while loading. Please reload this page.
Add configurable business tracing profile #90
Changes from all commits
3f6c1d8c8e1517File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
Check warning on line 22 in framework/src/BBT.Aether.AspNetCore/BBT/Aether/AspNetCore/Telemetry/BusinessSpanFilterProcessor.cs
Use 'string.StartsWith(char)' instead of 'string.StartsWith(string)' when you have a string with a single char
Check failure on line 25 in framework/src/BBT.Aether.AspNetCore/Microsoft/Extensions/DependencyInjection/AetherTelemetryServiceCollectionExtensions.cs
Refactor this method to reduce its Cognitive Complexity from 76 to the 15 allowed.
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.
issue (bug_risk): Configure tracing detail level after all configuration sources (including environment) are applied.
Currently
AetherTracingRuntime.Configureis called before defaults and environment-variable overrides are applied, soAetherTracingRuntime.DetailLevelmay not match the finalopts.Tracing.DetailLevel. Please move this call to after all configuration sources are applied so the runtime state reflects the effective tracing configuration.Check warning on line 56 in framework/src/BBT.Aether.AspNetCore/Microsoft/Extensions/DependencyInjection/AetherTelemetryServiceCollectionExtensions.cs
Define a constant instead of using this literal 'aether' 4 times.
Check warning on line 88 in framework/src/BBT.Aether.AspNetCore/Microsoft/Extensions/DependencyInjection/AetherTelemetryServiceCollectionExtensions.cs
Remove this null-forgiving operator; the compiler already knows this expression is not null here.
Check warning on line 244 in framework/src/BBT.Aether.AspNetCore/Microsoft/Extensions/DependencyInjection/AetherTelemetryServiceCollectionExtensions.cs
Remove this null-forgiving operator; the compiler already knows this expression is not null here.
Check warning on line 273 in framework/src/BBT.Aether.AspNetCore/Microsoft/Extensions/DependencyInjection/AetherTelemetryServiceCollectionExtensions.cs
Pass a timeout to limit the execution time.
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.
In the Business profile, every outgoing HTTP request whose path starts with one of these prefixes is suppressed, regardless of its host. Consequently, a normal dependency request such as
https://api.example.com/v1.0/state/orders/123is mistaken for Dapr traffic and loses its service-boundary span. Check that the destination is the configured Dapr sidecar before applying these path-based exclusions.Useful? React with 👍 / 👎.
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.
issue (bug_risk): Guard against null RequestUri to avoid a potential NullReferenceException in the enricher.
Because the null-conditional applies only to
AbsolutePath,Splitis still invoked on a null string, which will throw. Please add an explicit guard (e.g., early return whenrequest.RequestUriis null or assignAbsolutePathto a local variable and null-check before callingSplit).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.
This recognizes only the Dapr HTTP invocation route, but the framework's
DaprExternalService.InvokeAsynccallsDaprClient.InvokeMethodAsync(DaprExternalService.cs:25-29), whose sidecar request uses the gRPC path/dapr.proto.runtime.v1.Dapr/InvokeService. Those are the invocation spans produced by the repository's normal Dapr flow, so they pass through without the new display name orrpc.*/dapr.app_idattributes.Useful? React with 👍 / 👎.
Check warning on line 36 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 42 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Remove this null-forgiving operator; the compiler already knows this expression is not null here.
Check warning on line 43 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 86 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 108 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 112 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 137 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 141 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedCache/Redis/RedisDistributedCacheService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 78 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockHandle.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 19 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Parameter 'applicationInfoAccessor' is unread.
Check warning on line 36 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 37 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Define a constant instead of using this literal 'lock.acquired' 6 times.
Check warning on line 55 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Do not forget to remove this deprecated code someday.
Check warning on line 101 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 107 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Either log this exception and handle it, or rethrow it with some contextual information.
Check warning on line 133 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 139 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Dapr/DaprDistributedLockService.cs
Either log this exception and handle it, or rethrow it with some contextual information.
Check warning on line 74 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockHandle.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 117 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockHandle.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 123 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockHandle.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 17 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockService.cs
Parameter 'applicationInfoAccessor' is unread.
Check warning on line 41 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Check warning on line 42 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockService.cs
Define a constant instead of using this literal 'lock.acquired' 6 times.
Check warning on line 60 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockService.cs
Do not forget to remove this deprecated code someday.
Check warning on line 93 in framework/src/BBT.Aether.Infrastructure/BBT/Aether/DistributedLock/Redis/RedisDistributedLockService.cs
Evaluation of this argument may be expensive and unnecessary if logging is disabled
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.