Non-blocking TODOs for Dist. Tracing
- Dominant language
- C#
- Stars
- 1.7k
- Forks
- 335
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 6
Description
This issue is meant to track a handful of ToDos for the distributed tracing work in DTFx.
The reference PR where these ToDos are brought up is: https://github.com/Azure/durabletask/pull/422
**ToDo list**
- [x] Why are we not generating the package on build? This references src/DurableTask.Core/DurableTask.Core.csproj
- [x] Why isn't `NullObjectTraceContext` not called `NoOpTraceContext`? Are we missing some context there or is the renaming still accurate?
- [ ] Go through all TODOs in the code, and address them
- [x] In line 154 of TraceContextBase, in the `SetActivityToCurrent()` method, why are we using reflection to access `Activity.Current` instead of just calling `Activity.Current`?
- [x] In TraceContextBase, line 167, we have the following snippet
```C#
if (!string.IsNullOrEmpty(json))
{
JToken typeName = JObject.Parse(json)["$type"];
Type traceContextType = Type.GetType(typeName.Value());
```
Why aren't we doing some validation that `typeName` is a subtype of `TraceContextBase`?
- [x] In `LIstExtensionsTest`, why is the call ` operations.Add(CreateRequestTelemetry("01", null, timeStamps[0])); ` passing `null` as the second parameter?
- [ ] Consider adding `break` optimization once we find a matching ID in `RemoveOperationTelemetry`, which is found in `ListExtensions.cs`. This optimization is valid if we guarantee that IDs are unique
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.