Class DaprResilienceOptions
- Namespace
- Virtufin.WorkManager.Configuration
- Assembly
- Virtufin.WorkManager.dll
Tunable knobs for DaprResiliencePipeline: the Polly-based retry + circuit breaker wrapping every Dapr SDK call the WorkManager makes.
public sealed record DaprResilienceOptions : IEquatable<DaprResilienceOptions>
- Inheritance
-
DaprResilienceOptions
- Implements
- Inherited Members
Fields
CircuitBreakerBreakDurationSecondsEnvVar
Env var for CircuitBreakerBreakDurationSeconds.
public const string CircuitBreakerBreakDurationSecondsEnvVar = "DAPR_CIRCUIT_BREAKER_DURATION_SECONDS"
Field Value
CircuitBreakerMinimumThroughputEnvVar
Env var for CircuitBreakerMinimumThroughput.
public const string CircuitBreakerMinimumThroughputEnvVar = "DAPR_CIRCUIT_BREAKER_THRESHOLD"
Field Value
DefaultCircuitBreakerBreakDurationSeconds
Default circuit-breaker open duration in seconds.
public const int DefaultCircuitBreakerBreakDurationSeconds = 30
Field Value
DefaultCircuitBreakerMinimumThroughput
Default circuit-breaker minimum throughput (failures in the rolling window before tripping).
public const int DefaultCircuitBreakerMinimumThroughput = 5
Field Value
DefaultRetryAttempts
Default retry attempts (matches the original hardcoded constant).
public const int DefaultRetryAttempts = 3
Field Value
DefaultRetryBaseDelayMs
Default retry base delay in ms.
public const int DefaultRetryBaseDelayMs = 200
Field Value
RetryAttemptsEnvVar
Env var for RetryAttempts.
public const string RetryAttemptsEnvVar = "DAPR_RETRY_ATTEMPTS"
Field Value
RetryBaseDelayMsEnvVar
Env var for RetryBaseDelayMs.
public const string RetryBaseDelayMsEnvVar = "DAPR_RETRY_BASE_DELAY_MS"
Field Value
Properties
CircuitBreakerBreakDurationSeconds
How long the circuit stays open before transitioning to half-open.
public int CircuitBreakerBreakDurationSeconds { get; init; }
Property Value
CircuitBreakerMinimumThroughput
Minimum number of operations in the window before the circuit can trip.
public int CircuitBreakerMinimumThroughput { get; init; }
Property Value
RetryAttempts
Number of retry attempts (Polly MaxRetryAttempts).
public int RetryAttempts { get; init; }
Property Value
RetryBaseDelayMs
Base delay between attempts; actual delay is RetryBaseDelayMs * 2^attempt.
public int RetryBaseDelayMs { get; init; }
Property Value
Methods
FromEnvironment(Func<string, string?>)
public static DaprResilienceOptions FromEnvironment(Func<string, string?> getEnvironment)