Skip to content

Conversation

@martintmk
Copy link
Contributor

@martintmk martintmk commented Jul 10, 2023

Details on the issue fix or feature implementation

The main purpose of InstanceName is to differentiate between multiple instances that have the same BuilderName. It defaults to null.

Previously, we had the strategy-key dimension that was not easy to configure using the API. It was also ambiguous with strategy-name and strategy-type.

Now, every resilience event has the following dimension that can identify by wich resilience strategy is was produced:

  • builder-name: the name of the builder, when using the AddResilienceStrategy extension this becomes the key identifier
  • builder-instance: the instance of the builder. Generally, it's null and consumer can set it up manually or configure the InstanceNameFormatter delegate to fill it when using complex keys (Demonstrate how to create dynamic strategies with complex keys #1366).
  • strategy-type: hard-coded strategy type (Retry, Hedging, Timeout)
  • strategy-name: consumer can set it up to add more details to the telemetry. Defaults to null.

As a part of this change I have also simplified the log messages to make them shorter.

Confirm the following

  • I started this PR by branching from the head of the default branch
  • I have targeted the PR to merge into the default branch
  • I have included unit tests for the issue/feature
  • I have successfully run a local build

@martintmk martintmk added the v8 Issues related to the new version 8 of the Polly library. label Jul 10, 2023
@martintmk martintmk added this to the v8.0.0 milestone Jul 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v8 Issues related to the new version 8 of the Polly library.

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants