Distributed Tracing for Entities (Isolated)#404
Merged
Conversation
added 2 commits
March 27, 2025 19:58
jviau
reviewed
Apr 1, 2025
Member
jviau
left a comment
There was a problem hiding this comment.
Do you know where Activity.Current will be set per entity operation?
Contributor
Author
This is actually done in DurableTask.Core in this PR where the Activities are created (with the exception of a client signaling an entity, for which the |
added 7 commits
April 14, 2025 00:20
…ing an entity from an orchestration
bachuv
reviewed
May 13, 2025
bachuv
reviewed
May 14, 2025
…uest times DateTimeOffset
bachuv
reviewed
May 19, 2025
bachuv
approved these changes
May 20, 2025
ce01763 to
958ec3a
Compare
Co-authored-by: Sophia Tevosyan <stevosyan@microsoft.com>
bachuv
approved these changes
Jun 5, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR adds support for distributed tracing for entities in the .NET isolated framework. The actual tracing objects are created in the durabletask repo (see this PR) but this repo is where the requests to entities are generated and executed in the isolated case. The changes in this PR are then mostly to propagate information correctly to the durabletask repo for the traces (for example, the time that a signal or call request to an entity was made, or the time that the request was accomplished, any associated error messages, etc.) Related to this propagation of information, the definition of proto objects related to signaling entities or entities starting orchestrations had to be populated with extra information (like the parent trace context of the request, or the time of the request, etc. For more details see this PR in the protobuf repo). The changes in the
ProtobufUtilsclass focus on adding this extra information (similar changes occur in this PR in the WebJobs repo).GrpcDurableEntityClientandShimDurableEntityClientclasses are to propagate this additional information in the case of a client signaling an entity,TaskEntityShimthey are for entities signaling other entities, entities starting orchestrations, and the actual execution of the entity requests, andTaskOrchestrationEntityContextfor orchestrations signaling and calling entitiesThe various other PRs related to this effort are