Class QuotaData
+ Class ActiveHealthCheckMonitorOptions
- Quota / throttling options.
+ Defines options for the active health check monitor.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class QuotaData
+ public class ActiveHealthCheckMonitorOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Average
- Average allowed in a time window.
+
+ DefaultInterval
+ Default probing interval.
Declaration
- public double Average { get; set; }
+ public TimeSpan DefaultInterval { get; set; }
Property Value
@@ -139,26 +139,26 @@ Property Value
- Double
+ TimeSpan
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Burst
- Burst allowance.
+
+ DefaultTimeout
+ Default probes timeout.
Declaration
- public double Burst { get; set; }
+ public TimeSpan DefaultTimeout { get; set; }
Property Value
@@ -170,7 +170,7 @@ Property Value
- Double
+ TimeSpan
@@ -183,10 +183,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.html
similarity index 62%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.html
index 49a52297f..67b82b3ba 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class HealthCheckData
+ Class ActiveHealthCheckOptions
-
@@ -68,10 +68,10 @@
-
+
- Class HealthCheckData
+ Class ActiveHealthCheckOptions
Active health check options.
@@ -79,7 +79,7 @@
Inheritance
- HealthCheckData
+ ActiveHealthCheckOptions
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class HealthCheckData
+ public sealed class ActiveHealthCheckOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Interval
+
+ Interval
Health probe interval.
Declaration
- public TimeSpan Interval { get; set; }
+ public TimeSpan? Interval { get; set; }
Property Value
@@ -170,21 +170,21 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
- Http path.
+
+ Path
+ HTTP health check endpoint path.
Declaration
@@ -208,19 +208,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Port
- Port number.
+
+ Policy
+ Active health check policy.
Declaration
- public int Port { get; set; }
+ public string Policy { get; set; }
Property Value
@@ -232,26 +232,26 @@ Property Value
- Int32
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Timeout
- Health probe timeout, after which the targeted endpoint is considered unhealthy.
+
+ Timeout
+ Health probe timeout, after which a destination is considered unhealthy.
Declaration
- public TimeSpan Timeout { get; set; }
+ public TimeSpan? Timeout { get; set; }
Property Value
@@ -263,7 +263,7 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
@@ -276,10 +276,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Cluster.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Cluster.html
index 7a18ef5d4..4ae679a65 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Cluster.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Cluster.html
@@ -152,7 +152,7 @@
Property Value
Improve this Doc
- View Source
+ View Source
Destinations
@@ -187,7 +187,7 @@ Property Value
HealthCheck
- Active health checking options.
+ Health checking options.
Declaration
@@ -240,6 +240,37 @@ Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ HttpRequest
+ Options of an outgoing HTTP request.
+
+
+ Declaration
+
+ public ProxyHttpRequestOptions HttpRequest { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ ProxyHttpRequestOptions
+
+
+
+
|
Improve this Doc
@@ -307,7 +338,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
Metadata
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html
similarity index 64%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html
index 25f945fdd..c8e0d2e14 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html
@@ -5,10 +5,10 @@
- Class DestinationData
+ Class ConsecutiveFailuresHealthPolicyOptions
-
@@ -68,18 +68,18 @@
-
+
- Class DestinationData
+ Class ConsecutiveFailuresHealthPolicyOptions
- Describes a destination of a cluster.
+ Defines options for the consecutive failures active health check policy.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class DestinationData
+ public class ConsecutiveFailuresHealthPolicyOptions
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Address
- Address of this destination. E.g. https://127.0.0.1:123/abcd1234/
.
+ ThresholdMetadataName
+ Name of the consecutive failure threshold metadata parameter.
+It's the number of consecutive failure that needs to happen in order to mark a destination as unhealthy.
Declaration
- public string Address { get; set; }
+ public static readonly string ThresholdMetadataName
- Property Value
+ Field Value
@@ -144,21 +144,23 @@ Property Value
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Metadata
- Arbitrary key-value pairs that further describe this destination.
+
+ DefaultThreshold
+ Default consecutive failures threshold that is applied if it's not set on a cluster's metadata.
Declaration
- public IDictionary<string, string> Metadata { get; set; }
+ public long DefaultThreshold { get; set; }
Property Value
@@ -170,7 +172,7 @@ Property Value
- IDictionary<String, String>
+ Int64
@@ -183,10 +185,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
index 4ea91e63e..9efc27b36 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
@@ -146,11 +146,42 @@
Property Value
|
- Improve this Doc
+ Improve this Doc
View Source
+
+ Health
+ Endpoint accepting active health check probes. E.g. http://127.0.0.1:1234/
.
+
+
+ Declaration
+
+ public string Health { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ String
+
+
+
+
+
+ |
+ Improve this Doc
+
+
+ View Source
+
Metadata
Arbitrary key-value pairs that further describe this destination.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
similarity index 73%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
index 0fed03a17..b9aa6389d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
@@ -5,10 +5,10 @@
- Class LoadBalancingData
+ Class HealthCheckConstants.ActivePolicy
-
@@ -68,18 +68,17 @@
-
+
- Class LoadBalancingData
+ Class HealthCheckConstants.ActivePolicy
- Load balancing options.
-
+
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class LoadBalancingData
+ public static class ActivePolicy
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+ ConsecutiveFailures
Declaration
- public string Mode { get; set; }
+ public static readonly string ConsecutiveFailures
- Property Value
+ Field Value
@@ -151,10 +149,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
similarity index 70%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
index 7703f3a7c..e8cab6e8b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
@@ -5,10 +5,10 @@
-
Class ProxyErrorFeature
+ Class HealthCheckConstants.PassivePolicy
-
@@ -68,21 +68,17 @@
-
+
- Class ProxyErrorFeature
+ Class HealthCheckConstants.PassivePolicy
-
- Namespace: Microsoft.ReverseProxy.Service.Proxy
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ProxyErrorFeature : IProxyErrorFeature
+ public static class PassivePolicy
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Error
+ TransportFailureRate
Declaration
- public Exception Error { get; set; }
+ public static readonly string TransportFailureRate
- Property Value
+ Field Value
@@ -141,15 +136,11 @@ Property Value
- Exception
+ String
- Implements
-
@@ -158,10 +149,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
index 9eac99823..d07e92f36 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
@@ -5,10 +5,10 @@
-
Class NullOperationContext
+ Class HealthCheckConstants
-
@@ -68,23 +68,17 @@
-
+
- Class NullOperationContext
+ Class HealthCheckConstants
- Implementation of IOperationContext
-which doesn't do anything.
-
+
-
- Namespace: Microsoft.ReverseProxy.Telemetry
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
-
- public class NullOperationContext : IOperationContext
-
- Methods
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- SetProperty(String, String)
- Sets a property on the current operation context.
-
-
- Declaration
+ Syntax
- public void SetProperty(string key, string value)
-
- Parameters
-
-
-
- Type
- Name
- Description
-
-
-
-
- String
- key
- Property key.
-
-
-
- String
- value
- Property value.
-
-
-
-
- Implements
-
- IOperationContext
+ public static class HealthCheckConstants
@@ -170,10 +118,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
index 913fe0bfa..2fd0d0f39 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
@@ -73,7 +73,7 @@
Class HealthCheckOptions
- Active health check options.
+ All health check options.
@@ -115,81 +115,19 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
-
-
- Enabled
- Whether health probes are enabled.
-
-
- Declaration
-
- public bool Enabled { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- Boolean
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- Interval
- Health probe interval.
-
-
- Declaration
-
- public TimeSpan Interval { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- TimeSpan
-
-
-
-
-
- |
- Improve this Doc
+ View Source
-
- View Source
-
-
- Path
- Http path.
+
+ Active
+ Active health check options.
Declaration
- public string Path { get; set; }
+ public ActiveHealthCheckOptions Active { get; set; }
Property Value
@@ -201,57 +139,26 @@ Property Value
- String
+ ActiveHealthCheckOptions
|
- Improve this Doc
+ Improve this Doc
- View Source
-
-
- Port
- Port number.
-
-
- Declaration
-
- public int Port { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- Int32
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
+ View Source
-
- Timeout
- Health probe timeout, after which the targeted endpoint is considered unhealthy.
+
+ Passive
+ Passive health check options.
Declaration
- public TimeSpan Timeout { get; set; }
+ public PassiveHealthCheckOptions Passive { get; set; }
Property Value
@@ -263,7 +170,7 @@ Property Value
- TimeSpan
+ PassiveHealthCheckOptions
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
similarity index 61%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
index a872f56ff..70720952d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
- Class ClusterPartitioningData
+ Class PassiveHealthCheckOptions
-
@@ -68,18 +68,18 @@
-
+
- Class ClusterPartitioningData
+ Class PassiveHealthCheckOptions
- Cluster partitioning configures which endpoints in a cluster are eligible to process each request.
+ Passive health check options.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ClusterPartitioningData
+ public sealed class PassiveHealthCheckOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitionCount
- Number of partitions.
+
+ Enabled
+ Whether passive health checks are enabled.
Declaration
- public int PartitionCount { get; set; }
+ public bool Enabled { get; set; }
Property Value
@@ -139,26 +139,26 @@ Property Value
- Int32
+ Boolean
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitioningAlgorithm
- E.g. "SHA256".
+
+ Policy
+ Passive health check policy.
Declaration
- public string PartitioningAlgorithm { get; set; }
+ public string Policy { get; set; }
Property Value
@@ -177,20 +177,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitionKeyExtractor
- Describes how to compute the partitioning key from an incoming request.
-E.g. Header('x-ms-organization-id')
.
+
+ ReactivationPeriod
+ Destination reactivation period after which an unhealthy destination is considered healthy again.
Declaration
- public string PartitionKeyExtractor { get; set; }
+ public TimeSpan? ReactivationPeriod { get; set; }
Property Value
@@ -202,7 +201,7 @@ Property Value
- String
+ Nullable<TimeSpan>
@@ -215,10 +214,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
index 26d5ebd4f..2111a2ef7 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
@@ -202,6 +202,36 @@
Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ PropagateActivityContext
+
+
+ Declaration
+
+ public bool? PropagateActivityContext { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ Nullable<Boolean>
+
+
+
+
|
Improve this Doc
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
similarity index 56%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
index 0d6e2d4f1..9225d9681 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
@@ -5,10 +5,10 @@
- Class SessionAffinityData
+ Class ProxyHttpRequestOptions
-
@@ -68,18 +68,18 @@
-
+
- Class SessionAffinityData
+ Class ProxyHttpRequestOptions
- Session affinitity options.
+ Outgoing request configuration.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class SessionAffinityData
+ public sealed class ProxyHttpRequestOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
- Indicates whether session affinity is enabled.
+
+ RequestTimeout
+ Timeout for the outgoing request.
+Default is 100 seconds.
Declaration
- public bool Enabled { get; set; }
+ public TimeSpan? RequestTimeout { get; set; }
Property Value
@@ -139,26 +140,27 @@ Property Value
- Boolean
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- FailurePolicy
- Strategy handling missing destination for an affinitized request.
+
+ Version
+ HTTP version for the outgoing request.
+Default is HTTP/2.
Declaration
- public string FailurePolicy { get; set; }
+ public Version Version { get; set; }
Property Value
@@ -170,26 +172,28 @@ Property Value
- String
+ Version
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Session affinity mode which is implemented by one of providers.
+
+ VersionPolicy
+ Version policy for the outgoing request.
+Defines whether to upgrade or downgrade HTTP version if possible.
+Default is RequestVersionOrLower
.
Declaration
- public string Mode { get; set; }
+ public HttpVersionPolicy? VersionPolicy { get; set; }
Property Value
@@ -201,38 +205,7 @@ Property Value
- String
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- Settings
- Key-value pair collection holding extra settings specific to different affinity modes.
-
-
- Declaration
-
- public IDictionary<string, string> Settings { get; set; }
-
- Property Value
-
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ The actual destination that the request was proxied to.
+
+
+ Declaration
+
+ DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
@@ -157,7 +188,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
similarity index 57%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
index 3dcf03908..67f951318 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
@@ -5,10 +5,10 @@
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
-
@@ -68,18 +68,17 @@
-
+
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
- Root of IConfiguration-first configuration model.
-
+
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Middleware
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ConfigurationData
+ public class PassiveHealthCheckMiddleware
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Clusters
- Clusters.
-
+
+ PassiveHealthCheckMiddleware(RequestDelegate, IEnumerable<IPassiveHealthCheckPolicy>)
+
Declaration
- public Dictionary<string, ClusterData> Clusters { get; }
+ public PassiveHealthCheckMiddleware(RequestDelegate next, IEnumerable<IPassiveHealthCheckPolicy> policies)
- Property Value
+ Parameters
Type
+ Name
Description
- Dictionary<String, ClusterData>
+ RequestDelegate
+ next
+
+
+
+ IEnumerable<IPassiveHealthCheckPolicy>
+ policies
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Routes
- Routes.
-
+
+ Invoke(HttpContext)
+
Declaration
- public List<ProxyRouteData> Routes { get; }
+ public Task Invoke(HttpContext context)
- Property Value
+ Parameters
+
+
+
+ Type
+ Name
+ Description
+
+
+
+
+ HttpContext
+ context
+
+
+
+
+ Returns
@@ -170,7 +193,7 @@ Property Value
- List<ProxyRouteData>
+ Task
@@ -183,10 +206,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
index 44b187443..e9d9a08f6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
@@ -179,6 +179,37 @@
Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ Actual destination chosen as the target that received the current request.
+
+
+ Declaration
+
+ public DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
Implements
IReverseProxyFeature
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
index e060a220c..ec46c2b89 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
@@ -77,6 +77,8 @@
Classes
+ PassiveHealthCheckMiddleware
+
ReverseProxyFeature
Store current ClusterConfig and Tracks proxy cluster destinations that are available to handle the current request.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
index 72f3c2482..ae010473c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
-
@@ -68,12 +68,12 @@
-
+
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
- Active health probing options for a cluster.
+ Active health check options for a cluster.
@@ -99,30 +99,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterHealthCheckOptions
+ public struct ClusterActiveHealthCheckOptions
- Remarks
- Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
-Each "feature" can have its own struct.
-
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterHealthCheckOptions(Boolean, TimeSpan, TimeSpan, Int32, String)
+
+ ClusterActiveHealthCheckOptions(Boolean, Nullable<TimeSpan>, Nullable<TimeSpan>, String, String)
Declaration
- public ClusterHealthCheckOptions(bool enabled, TimeSpan interval, TimeSpan timeout, int port, string path)
+ public ClusterActiveHealthCheckOptions(bool enabled, TimeSpan? interval, TimeSpan? timeout, string policy, string path)
Parameters
@@ -140,18 +136,18 @@ Parameters
- TimeSpan
+ Nullable<TimeSpan>
interval
- TimeSpan
+ Nullable<TimeSpan>
timeout
- Int32
- port
+ String
+ policy
@@ -165,14 +161,14 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Interval
- Interval between health probes.
+
+ Interval
+ Health probe interval.
Declaration
- public TimeSpan Interval { get; }
+ public TimeSpan? Interval { get; }
Property Value
@@ -220,21 +216,21 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Port
- Port number.
+
+ Policy
+ Active health check policy.
Declaration
- public int Port { get; }
+ public string Policy { get; }
Property Value
@@ -282,26 +278,26 @@ Property Value
- Int32
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Timeout
- Health probe timeout, after which the targeted endpoint is considered unhealthy.
+
+ Timeout
+ Health probe timeout, after which a destination is considered unhealthy.
Declaration
- public TimeSpan Timeout { get; }
+ public TimeSpan? Timeout { get; }
Property Value
@@ -313,7 +309,7 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
@@ -326,10 +322,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
index 288f0431a..16383f7ed 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
@@ -116,24 +116,24 @@
Syntax
Remarks
All members must remain immutable to avoid thread safety issues.
Instead, instances of ClusterConfig are replaced
-in ther entirety when values need to change.
+in their entirety when values need to change.
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
- ClusterConfig(Cluster, ClusterConfig.ClusterHealthCheckOptions, ClusterConfig.ClusterLoadBalancingOptions, ClusterConfig.ClusterSessionAffinityOptions, HttpMessageInvoker, ClusterConfig.ClusterProxyHttpClientOptions, IReadOnlyDictionary<String, String>)
+ ClusterConfig(Cluster, ClusterHealthCheckOptions, ClusterLoadBalancingOptions, ClusterSessionAffinityOptions, HttpMessageInvoker, ClusterProxyHttpClientOptions, ClusterProxyHttpRequestOptions, IReadOnlyDictionary<String, String>)
Declaration
- public ClusterConfig(Cluster cluster, ClusterConfig.ClusterHealthCheckOptions healthCheckOptions, ClusterConfig.ClusterLoadBalancingOptions loadBalancingOptions, ClusterConfig.ClusterSessionAffinityOptions sessionAffinityOptions, HttpMessageInvoker httpClient, ClusterConfig.ClusterProxyHttpClientOptions httpClientOptions, IReadOnlyDictionary<string, string> metadata)
+ public ClusterConfig(Cluster cluster, ClusterHealthCheckOptions healthCheckOptions, ClusterLoadBalancingOptions loadBalancingOptions, ClusterSessionAffinityOptions sessionAffinityOptions, HttpMessageInvoker httpClient, ClusterProxyHttpClientOptions httpClientOptions, ClusterProxyHttpRequestOptions httpRequestOptions, IReadOnlyDictionary<string, string> metadata)
Parameters
@@ -151,17 +151,17 @@ Parameters
- ClusterConfig.ClusterHealthCheckOptions
+ ClusterHealthCheckOptions
healthCheckOptions
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
loadBalancingOptions
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
sessionAffinityOptions
@@ -171,10 +171,15 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
httpClientOptions
+
+ ClusterProxyHttpRequestOptions
+ httpRequestOptions
+
+
IReadOnlyDictionary<String, String>
metadata
@@ -189,7 +194,7 @@ Properties
Improve this Doc
- View Source
+ View Source
HealthCheckOptions
@@ -197,7 +202,7 @@
Declaration
- public ClusterConfig.ClusterHealthCheckOptions HealthCheckOptions { get; }
+ public ClusterHealthCheckOptions HealthCheckOptions { get; }
Property Value
@@ -209,7 +214,7 @@ Property Value
- ClusterConfig.ClusterHealthCheckOptions
+ ClusterHealthCheckOptions
@@ -250,7 +255,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
HttpClientOptions
@@ -258,7 +263,7 @@
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions HttpClientOptions { get; }
+ public ClusterProxyHttpClientOptions HttpClientOptions { get; }
Property Value
@@ -270,7 +275,37 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
+
+
+
+
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ HttpRequestOptions
+
+
+ Declaration
+
+ public ClusterProxyHttpRequestOptions HttpRequestOptions { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ ClusterProxyHttpRequestOptions
@@ -280,7 +315,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
LoadBalancingOptions
@@ -288,7 +323,7 @@
Declaration
- public ClusterConfig.ClusterLoadBalancingOptions LoadBalancingOptions { get; }
+ public ClusterLoadBalancingOptions LoadBalancingOptions { get; }
Property Value
@@ -300,7 +335,7 @@ Property Value
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
@@ -341,7 +376,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
SessionAffinityOptions
@@ -349,7 +384,7 @@
Declaration
- public ClusterConfig.ClusterSessionAffinityOptions SessionAffinityOptions { get; }
+ public ClusterSessionAffinityOptions SessionAffinityOptions { get; }
Property Value
@@ -361,7 +396,7 @@ Property Value
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
@@ -377,7 +412,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
similarity index 56%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
index f8a7b5cfe..db49bcd48 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
@@ -5,10 +5,10 @@
- Class MonotonicTimer
+ Class ClusterDynamicState
-
@@ -68,23 +68,17 @@
-
+
- Class MonotonicTimer
+ Class ClusterDynamicState
- Provides a way to measure time in a monotonic fashion, immune to any system clock changes.
-The time is measured from the moment the class is instantiated.
-
+
-
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class MonotonicTimer : IMonotonicTimer
+ public sealed class ClusterDynamicState
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MonotonicTimer()
- Initializes a new instance of the MonotonicTimer class.
-
+
+ ClusterDynamicState(IReadOnlyList<DestinationInfo>, IReadOnlyList<DestinationInfo>)
+
Declaration
- public MonotonicTimer()
+ public ClusterDynamicState(IReadOnlyList<DestinationInfo> allDestinations, IReadOnlyList<DestinationInfo> healthyDestinations)
- Properties
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- CurrentTime
- Gets the current time (elapsed, relative to the creation of this timer).
-
-
- Declaration
-
- public TimeSpan CurrentTime { get; }
-
- Property Value
+ Parameters
Type
+ Name
Description
- TimeSpan
+ IReadOnlyList<DestinationInfo>
+ allDestinations
+
+
+
+ IReadOnlyList<DestinationInfo>
+ healthyDestinations
- Methods
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DelayUntil(TimeSpan, CancellationToken)
- Creates a task that completes when CurrentTime >= expiryTime.
-
+
+ AllDestinations
+
Declaration
- public Task DelayUntil(TimeSpan expiryTime, CancellationToken cancellationToken)
+ public IReadOnlyList<DestinationInfo> AllDestinations { get; }
- Parameters
+ Property Value
Type
- Name
Description
- TimeSpan
- expiryTime
- Time at which the returned task will be completed.
-
-
-
- CancellationToken
- cancellationToken
+ IReadOnlyList<DestinationInfo>
- Returns
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ HealthyDestinations
+
+
+ Declaration
+
+ public IReadOnlyList<DestinationInfo> HealthyDestinations { get; }
+
+ Property Value
@@ -218,20 +206,11 @@ Returns
- Task
- A task which completes at expiryTime
.
-
+ IReadOnlyList<DestinationInfo>
+
- Implements
-
- IMonotonicTimer
-
- Extension Methods
-
@@ -240,10 +219,10 @@ Extension Methods
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
index 8d8733377..d5b6fb1d4 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class RouteHeaderData
+ Struct ClusterHealthCheckOptions
-
@@ -68,101 +68,101 @@
-
+
- Class RouteHeaderData
+ Struct ClusterHealthCheckOptions
- Describes the matching criteria for a route.
+ All health check options for a cluster.
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class RouteHeaderData
+ public struct ClusterHealthCheckOptions
- Properties
+ Remarks
+ Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
+Each "feature" can have its own struct.
+
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- IsCaseSensitive
- Specifies whether header value comparisons should ignore case.
-When true
, Ordinal is used.
-When false
, OrdinalIgnoreCase is used.
-Defaults to false
.
-
+
+ ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions, ClusterActiveHealthCheckOptions)
+
Declaration
- public bool IsCaseSensitive { get; set; }
+ public ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions passive, ClusterActiveHealthCheckOptions active)
- Property Value
+ Parameters
Type
+ Name
Description
- Boolean
+ ClusterPassiveHealthCheckOptions
+ passive
+
+
+
+ ClusterActiveHealthCheckOptions
+ active
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Specifies how header values should be compared (e.g. exact matches Vs. by prefix).
-Defaults to ExactHeader.
+
+ Active
+ Active health check options.
Declaration
- public HeaderMatchMode Mode { get; set; }
+ public ClusterActiveHealthCheckOptions Active { get; }
Property Value
@@ -174,26 +174,26 @@ Property Value
- HeaderMatchMode
+ ClusterActiveHealthCheckOptions
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Name
- Name of the header to look for.
+
+ Enabled
+ Whether at least one type of health check is enabled.
Declaration
- public string Name { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -205,27 +205,26 @@ Property Value
- String
+ Boolean
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Values
- A collection of acceptable header values used during routing. Only one value must match.
-The list must not be empty unless using Exists.
+
+ Passive
+ Passive health check options.
Declaration
- public IReadOnlyList<string> Values { get; set; }
+ public ClusterPassiveHealthCheckOptions Passive { get; }
Property Value
@@ -237,7 +236,7 @@ Property Value
- IReadOnlyList<String>
+ ClusterPassiveHealthCheckOptions
@@ -250,10 +249,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
index 23441d835..0f539416a 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
@@ -5,10 +5,10 @@
-
Class ProxyMatchData
+ Class ClusterInfo
-
@@ -68,18 +68,18 @@
-
+
- Class ProxyMatchData
+ Class ClusterInfo
- Describes the matching criteria for a route.
+ Representation of a cluster for use at runtime.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ProxyMatchData
+ public sealed class ClusterInfo
+ Remarks
+ Note that while this class is immutable, specific members such as
+Config and DynamicState hold mutable references
+that can be updated atomically and which will always have latest information
+relevant to this cluster.
+All members are thread safe.
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Headers
- Only match requests that contain all of these headers.
-
+
+ ClusterId
+
Declaration
- public IReadOnlyList<RouteHeaderData> Headers { get; set; }
+ public string ClusterId { get; }
Property Value
@@ -139,26 +145,27 @@ Property Value
- IReadOnlyList<RouteHeaderData>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Hosts
- Only match requests with the given Host header.
+
+ Config
+ Encapsulates parts of a cluster that can change atomically
+in reaction to config changes.
Declaration
- public IReadOnlyList<string> Hosts { get; set; }
+ public ClusterConfig Config { get; }
Property Value
@@ -170,26 +177,27 @@ Property Value
- IReadOnlyList<String>
+ ClusterConfig
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Methods
- Only match requests that use these optional HTTP methods. E.g. GET, POST.
+
+ DynamicState
+ Encapsulates parts of a cluster that can change atomically
+in reaction to runtime state changes (e.g. dynamic endpoint discovery).
Declaration
- public IReadOnlyList<string> Methods { get; set; }
+ public ClusterDynamicState DynamicState { get; }
Property Value
@@ -201,42 +209,29 @@ Property Value
- IReadOnlyList<String>
+ ClusterDynamicState
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
- Only match requests with the given Path pattern.
+
+ UpdateDynamicState()
+ Recreates the DynamicState data.
Declaration
- public string Path { get; set; }
+ public void UpdateDynamicState()
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- String
-
-
-
-
@@ -245,10 +240,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
similarity index 73%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
index 0d27260ef..36210eb70 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
-
@@ -68,10 +68,10 @@
-
+
- Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
public struct ClusterLoadBalancingOptions
@@ -106,13 +106,13 @@ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterLoadBalancingOptions(LoadBalancingMode)
+
+ ClusterLoadBalancingOptions(LoadBalancingMode)
Declaration
@@ -140,13 +140,13 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+
+ Mode
Declaration
@@ -176,10 +176,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
index ad7b886cc..3b04f77bd 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
@@ -68,94 +68,102 @@
-
+
- Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
+ Passive health check options for a cluster.
+
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ProxyHttpClientData
+ public struct ClusterPassiveHealthCheckOptions
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClusterPassiveHealthCheckOptions(Boolean, String, Nullable<TimeSpan>)
Declaration
- public CertificateConfigData ClientCertificate { get; set; }
+ public ClusterPassiveHealthCheckOptions(bool enabled, string policy, TimeSpan? reactivationPeriod)
- Property Value
+ Parameters
Type
+ Name
Description
- CertificateConfigData
+ Boolean
+ enabled
+
+
+
+ String
+ policy
+
+
+
+ Nullable<TimeSpan>
+ reactivationPeriod
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
-
+
+ Enabled
+ Whether active health checks are enabled.
+
Declaration
- public bool DangerousAcceptAnyServerCertificate { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -174,18 +182,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
-
+
+ Policy
+ Passive health check policy.
+
Declaration
- public int? MaxConnectionsPerServer { get; set; }
+ public string Policy { get; }
Property Value
@@ -197,25 +206,26 @@ Property Value
- Nullable<Int32>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- SslProtocols
-
+
+ ReactivationPeriod
+ Destination reactivation period after which an unhealthy destination is considered healthy again.
+
Declaration
- public List<SslProtocols> SslProtocols { get; set; }
+ public TimeSpan? ReactivationPeriod { get; }
Property Value
@@ -227,7 +237,7 @@ Property Value
- List<SslProtocols>
+ Nullable<TimeSpan>
@@ -240,10 +250,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
index 0973321b0..dd4f416f9 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
-
@@ -68,16 +68,16 @@
-
+
- Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
Implements
-
+
Inherited Members
@@ -96,26 +96,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterProxyHttpClientOptions : IEquatable<ClusterConfig.ClusterProxyHttpClientOptions>
+ public struct ClusterProxyHttpClientOptions : IEquatable<ClusterProxyHttpClientOptions>
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>)
+
+ ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>, Nullable<Boolean>)
Declaration
- public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer)
+ public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer, bool? propagateActivityContext)
Parameters
@@ -147,19 +147,24 @@ Parameters
maxConnectionsPerServer
+
+ Nullable<Boolean>
+ propagateActivityContext
+
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClientCertificate
Declaration
@@ -183,13 +188,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
+
+ DangerousAcceptAnyServerCertificate
Declaration
@@ -213,13 +218,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
+
+ MaxConnectionsPerServer
Declaration
@@ -243,13 +248,43 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
+
+
+ View Source
+
+
+ PropagateActivityContext
+
+
+ Declaration
+
+ public bool? PropagateActivityContext { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ Nullable<Boolean>
+
+
+
+
+
+ |
+ Improve this Doc
- View Source
+ View Source
-
- SslProtocols
+
+ SslProtocols
Declaration
@@ -275,18 +310,18 @@ Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equals(ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Equals(ClusterProxyHttpClientOptions)
Declaration
- public bool Equals(ClusterConfig.ClusterProxyHttpClientOptions other)
+ public bool Equals(ClusterProxyHttpClientOptions other)
Parameters
@@ -299,7 +334,7 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
other
@@ -322,13 +357,13 @@ Returns
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equals(Object)
+
+ Equals(Object)
Declaration
@@ -371,13 +406,13 @@ Overrides
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- GetHashCode()
+
+ GetHashCode()
Declaration
@@ -405,18 +440,18 @@ Operators
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Equality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
- public static bool operator ==(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator ==(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
@@ -429,12 +464,12 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
left
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
right
@@ -457,18 +492,18 @@ Returns
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Inequality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Inequality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
- public static bool operator !=(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator !=(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
@@ -481,12 +516,12 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
left
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
right
@@ -519,10 +554,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html
new file mode 100644
index 000000000..0076c353d
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html
@@ -0,0 +1,328 @@
+
+
+
+
+
+
+
+
Struct ClusterProxyHttpRequestOptions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
similarity index 67%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
index 23be58cd6..d05ba71a1 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
@@ -5,10 +5,10 @@
- Struct ClusterConfig.ClusterSessionAffinityOptions
+ Struct ClusterSessionAffinityOptions
-
@@ -68,10 +68,10 @@
-
+
- Struct ClusterConfig.ClusterSessionAffinityOptions
+ Struct ClusterSessionAffinityOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
public struct ClusterSessionAffinityOptions
@@ -106,13 +106,13 @@ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterSessionAffinityOptions(Boolean, String, String, IReadOnlyDictionary<String, String>)
+
+ ClusterSessionAffinityOptions(Boolean, String, String, IReadOnlyDictionary<String, String>)
Declaration
@@ -155,13 +155,13 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
+
+ Enabled
Declaration
@@ -185,13 +185,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- FailurePolicy
+
+ FailurePolicy
Declaration
@@ -215,13 +215,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+
+ Mode
Declaration
@@ -245,13 +245,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Settings
+
+ Settings
Declaration
@@ -281,10 +281,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
index de6870d63..4b674bebe 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
@@ -122,18 +122,18 @@
Constructors
|
- Improve this Doc
+ Improve this Doc
View Source
- DestinationConfig(String)
+ DestinationConfig(String, String)
Declaration
- public DestinationConfig(string address)
+ public DestinationConfig(string address, string health)
Parameters
@@ -150,6 +150,11 @@ Parameters
address
+
+ String
+ health
+
+
Properties
@@ -159,11 +164,12 @@ Properties
Improve this Doc
- View Source
+ View Source
Address
-
+ Endpoint accepting proxied requests.
+
Declaration
@@ -184,6 +190,37 @@ Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ Health
+ Endpoint accepting active health check probes.
+
+
+ Declaration
+
+ public string Health { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ String
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
similarity index 72%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
index 24fb72cbb..2ad3574b6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
@@ -5,10 +5,10 @@
- Class DestinationDynamicState
+ Class DestinationHealthState
-
@@ -68,17 +68,18 @@
-
+
- Class DestinationDynamicState
+ Class DestinationHealthState
-
+ Tracks destination passive and active health states.
+
Inherited Members
@@ -106,60 +107,58 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class DestinationDynamicState
+ public class DestinationHealthState
- Constructors
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DestinationDynamicState(DestinationHealth)
-
+
+ Active
+ Active health state.
+
Declaration
- public DestinationDynamicState(DestinationHealth health)
+ public DestinationHealth Active { get; set; }
- Parameters
+ Property Value
Type
- Name
Description
DestinationHealth
- health
- Properties
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Health
-
+
+ Passive
+ Passive health state.
+
Declaration
- public DestinationHealth Health { get; }
+ public DestinationHealth Passive { get; set; }
Property Value
@@ -184,10 +183,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
index 8f8b13da2..af61cfa21 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
@@ -115,7 +115,7 @@
Properties
Improve this Doc
- View Source
+ View Source
Current
@@ -147,7 +147,7 @@ Methods
Improve this Doc
- View Source
+ View Source
Dispose()
@@ -162,7 +162,7 @@ Declaration
Improve this Doc
- View Source
+ View Source
MoveNext()
@@ -194,7 +194,7 @@ Explicit Interface Implementations
Improve this Doc
- View Source
+ View Source
IEnumerator.Current
@@ -224,7 +224,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IEnumerator.Reset()
@@ -255,7 +255,7 @@ Implements
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
index 3cccc1e39..f616d8b06 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
@@ -120,8 +120,8 @@ Syntax
Remarks
Note that while this class is immutable, specific members such as
-Config and DynamicState hold mutable references
-that can be updated atomically and which will always have latest information
+Config and Health hold mutable references
+that can be updated and which will always have latest information
relevant to this endpoint.
All members are thread safe.
@@ -132,7 +132,7 @@ Constructors
Improve this Doc
- View Source
+ View Source
DestinationInfo(String)
@@ -166,7 +166,7 @@ Properties
Improve this Doc
- View Source
+ View Source
ConcurrentRequestCount
@@ -197,7 +197,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
Config
@@ -228,7 +228,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
DestinationId
@@ -255,19 +255,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DynamicState
- A snapshot of the current health state.
+
+ Health
+ Mutable health state for this destination.
Declaration
- public DestinationDynamicState DynamicState { get; }
+ public DestinationHealthState Health { get; }
Property Value
@@ -279,7 +279,7 @@ Property Value
- DestinationDynamicState
+ DestinationHealthState
@@ -291,7 +291,7 @@ Methods
Improve this Doc
- View Source
+ View Source
GetEnumerator()
@@ -323,7 +323,7 @@ Explicit Interface Implementations
Improve this Doc
- View Source
+ View Source
IEnumerable<DestinationInfo>.GetEnumerator()
@@ -353,7 +353,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IReadOnlyCollection<DestinationInfo>.Count
@@ -383,7 +383,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IReadOnlyList<DestinationInfo>.Item[Int32]
@@ -430,7 +430,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IEnumerable.GetEnumerator()
@@ -479,7 +479,7 @@ Implements
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html
new file mode 100644
index 000000000..588573902
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+ Interface IClusterChangeListener
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
index 82d7cbf54..49e8ca061 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
@@ -81,30 +81,51 @@ ClusterDynamicState
+
+ ClusterInfo
+ Representation of a cluster for use at runtime.
DestinationConfig
Immutable representation of the portions of a destination
that only change in reaction to configuration changes
(e.g. address).
- DestinationDynamicState
-
+ DestinationHealthState
+ Tracks destination passive and active health states.
+
DestinationInfo
Representation of a cluster's destination for use at runtime.
Structs
- ClusterConfig.ClusterHealthCheckOptions
- Active health probing options for a cluster.
+ ClusterActiveHealthCheckOptions
+ Active health check options for a cluster.
+
+ ClusterHealthCheckOptions
+ All health check options for a cluster.
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterPassiveHealthCheckOptions
+ Passive health check options for a cluster.
+
+ ClusterProxyHttpClientOptions
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterProxyHttpRequestOptions
+ Outgoing request configuration.
+Readonly copy of ProxyHttpRequestOptions.
+
+ ClusterSessionAffinityOptions
DestinationInfo.Enumerator
+ Interfaces
+
+ IClusterChangeListener
+ Listener for changes in the clusters.
+
Enums
DestinationHealth
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html
new file mode 100644
index 000000000..a072c1d3f
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html
@@ -0,0 +1,288 @@
+
+
+
+
+
+
+
+ Struct DestinationProbingResult
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
index c323b91ad..f52e7078b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
@@ -5,10 +5,10 @@
- Interface IOperationContext
+ Interface IActiveHealthCheckMonitor
-
@@ -68,39 +68,37 @@
-
+
- Interface IOperationContext
+ Interface IActiveHealthCheckMonitor
- Provides contextual information for an ongoing operation.
-Operation contexts support nesting, and the current context
-can be obtained from Context.
+ Actively monitors destinations health.
- Namespace: Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace: Microsoft.ReverseProxy.Service.HealthChecks
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public interface IOperationContext
+ public interface IActiveHealthCheckMonitor
Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- SetProperty(String, String)
- Sets a property on the current operation context.
+
+ CheckHealthAsync(IEnumerable<ClusterInfo>)
+ Checks health of all clusters' destinations.
Declaration
- void SetProperty(string key, string value)
+ Task CheckHealthAsync(IEnumerable<ClusterInfo> clusters)
Parameters
@@ -113,15 +111,25 @@ Parameters
- String
- key
- Property key.
+ IEnumerable<ClusterInfo>
+ clusters
+ Clusters to check the health of their destinations.
+
+
+ Returns
+
+
+
+ Type
+ Description
+
+
+
- String
- value
- Property value.
+ Task
+ Task representing the health check process.
@@ -134,10 +142,10 @@ Parameters
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
similarity index 55%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
index 8d7619ba6..375d43331 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
@@ -5,10 +5,10 @@
-
Interface IMonotonicTimer
+ Interface IActiveHealthCheckPolicy
-
@@ -68,37 +68,37 @@
-
+
- Interface IMonotonicTimer
+ Interface IActiveHealthCheckPolicy
- Abstraction for measuring time that is monotonically increasing.
+ Active health check evaulation policy.
- Namespace: Microsoft.ReverseProxy.Abstractions.Time
+ Namespace: Microsoft.ReverseProxy.Service.HealthChecks
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public interface IMonotonicTimer
+ public interface IActiveHealthCheckPolicy
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CurrentTime
- Gets the current time (elapsed, relative to the creation of this timer).
+
+ Name
+ Policy's name.
Declaration
- TimeSpan CurrentTime { get; }
+ string Name { get; }
Property Value
@@ -110,7 +110,7 @@ Property Value
- TimeSpan
+ String
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DelayUntil(TimeSpan, CancellationToken)
- Creates a task that completes when CurrentTime >= expiryTime.
+
+ ProbingCompleted(ClusterInfo, IReadOnlyList<DestinationProbingResult>)
+ Anaylizes results of active health probes sent to destinations and calculates their new health states.
Declaration
- Task DelayUntil(TimeSpan expiryTime, CancellationToken cancelationToken)
+ void ProbingCompleted(ClusterInfo cluster, IReadOnlyList<DestinationProbingResult> probingResults)
Parameters
@@ -144,39 +144,19 @@ Parameters
- TimeSpan
- expiryTime
- Time at which the returned task will be completed.
+ ClusterInfo
+ cluster
+ Cluster.
- CancellationToken
- cancelationToken
- Cancelation token for the created task.
+ IReadOnlyList<DestinationProbingResult>
+ probingResults
+ Destination probing results.
- Returns
-
-
-
- Type
- Description
-
-
-
-
- Task
- A task which completes at expiryTime
.
-
-
-
-
- Extension Methods
-
@@ -185,10 +165,10 @@ Extension Methods
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html
new file mode 100644
index 000000000..6b4055c6e
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
Interface IDestinationHealthUpdater
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html
new file mode 100644
index 000000000..801711fd4
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+ Interface IPassiveHealthCheckPolicy
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html
new file mode 100644
index 000000000..1a953492a
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html
@@ -0,0 +1,184 @@
+
+
+
+
+
+
+
+ Interface IProbingRequestFactory
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html
new file mode 100644
index 000000000..7219d9ccb
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html
@@ -0,0 +1,248 @@
+
+
+
+
+
+
+
+ Struct NewActiveDestinationHealth
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
similarity index 65%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
index a10bebcb3..ad2bc69d6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
@@ -5,10 +5,10 @@
- Namespace Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace Microsoft.ReverseProxy.Service.HealthChecks
-
@@ -68,23 +68,38 @@
-
+
- Namespace Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace Microsoft.ReverseProxy.Service.HealthChecks
+ Structs
+
+ DestinationProbingResult
+ Result of a destination's active health probing.
+
+ NewActiveDestinationHealth
+ Stores a new active health state for the given destination.
+
Interfaces
- IOperationContext
- Provides contextual information for an ongoing operation.
-Operation contexts support nesting, and the current context
-can be obtained from Context.
+ IActiveHealthCheckMonitor
+ Actively monitors destinations health.
+
+ IActiveHealthCheckPolicy
+ Active health check evaulation policy.
+
+ IDestinationHealthUpdater
+ Updates destinations' health states when it's requested by a health check policy
+while taking into account not only the new evaluated value but also the overall current cluster's health state.
+
+ IPassiveHealthCheckPolicy
+ Passive health check evaluation policy.
- IOperationLogger<TCategoryName>
- Provides methods to log telemetry for the execution of chunks of
-synchronous or asynchronous operations.
+ IProbingRequestFactory
+ A factory for creating HttpRequestMessages for active health probes to be sent to destinations.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
index f1243cf12..e81da581b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
@@ -185,14 +185,14 @@ Property Value
NewOptions
- New ClusterConfig.ClusterProxyHttpClientOptions instance
+
New ClusterProxyHttpClientOptions instance
specifying the settings for a new client.
CANNOT be null.
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions NewOptions { get; set; }
+ public ClusterProxyHttpClientOptions NewOptions { get; set; }
Property Value
@@ -204,7 +204,7 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
@@ -282,14 +282,14 @@ Property Value
OldOptions
- Old ClusterConfig.ClusterProxyHttpClientOptions instance
+
Old ClusterProxyHttpClientOptions instance
from which the OldClient was created.
Can be null if a client is getting constructed for the first time.
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions OldOptions { get; set; }
+ public ClusterProxyHttpClientOptions OldOptions { get; set; }
Property Value
@@ -301,7 +301,7 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html
deleted file mode 100644
index d6ccdf1d7..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html
+++ /dev/null
@@ -1,219 +0,0 @@
-
-
-
-
-
-
-
- Enum ProxyErrorCode
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html
deleted file mode 100644
index 99bf4a07f..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
- Class ProxyException
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
index 55e76e93b..05c9a5654 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
@@ -117,7 +117,7 @@ Methods
Improve this Doc
- View Source
+ View Source
AddTransformClientCert(ProxyRoute, String)
@@ -155,7 +155,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformForwarded(ProxyRoute, Boolean, Boolean, Boolean, Boolean, Boolean, String, String)
@@ -223,7 +223,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformHttpMethod(ProxyRoute, String, String)
@@ -266,7 +266,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathPrefix(ProxyRoute, PathString)
@@ -304,7 +304,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathRemovePrefix(ProxyRoute, PathString)
@@ -342,7 +342,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathRouteValues(ProxyRoute, PathString)
@@ -418,7 +418,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformQueryRouteParameter(ProxyRoute, String, String, Boolean)
@@ -466,7 +466,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformQueryValueParameter(ProxyRoute, String, String, Boolean)
@@ -514,7 +514,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformRemoveQueryParameter(ProxyRoute, String)
@@ -552,7 +552,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformRequestHeader(ProxyRoute, String, String, Boolean)
@@ -600,7 +600,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformResponseHeader(ProxyRoute, String, String, Boolean, Boolean)
@@ -653,7 +653,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformResponseTrailer(ProxyRoute, String, String, Boolean, Boolean)
@@ -706,7 +706,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformSuppressRequestHeaders(ProxyRoute)
@@ -739,7 +739,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformUseOriginalHostHeader(ProxyRoute)
@@ -772,7 +772,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformXForwarded(ProxyRoute, String, Boolean, Boolean, Boolean, Boolean, Boolean)
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
index f771b9120..0223a6e63 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
@@ -165,8 +165,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
index ccc7b55b7..06141b6b3 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
@@ -165,8 +165,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
index ca1b362c0..86f724da2 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
index 4332c7c27..fde639f6f 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
@@ -163,8 +163,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
index 7571da0c7..3d4b0990c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
@@ -123,8 +123,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -143,14 +142,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -165,8 +162,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
index ccdd86005..fd49f785d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
@@ -182,8 +182,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -202,14 +201,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -224,8 +221,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
index 3207b666d..2922128e5 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
@@ -162,8 +162,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -182,14 +181,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -204,8 +201,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
index e49c469fa..13e80725b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
@@ -159,8 +159,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -201,8 +198,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
index 667eb882c..d0ba0bb6b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
@@ -159,8 +159,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -201,8 +198,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
index fc36ca210..715b5bb6c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
index 15e1961d5..8a67607ac 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
index b925785b1..e7e57a66e 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
@@ -167,8 +167,7 @@ Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Classes
- NullOperationContext
- Implementation of IOperationContext
-which doesn't do anything.
-
- NullOperationLogger<TCategoryName>
- Implementation of IOperationLogger<TCategoryName>
-which doesn't log anything.
-
- TextOperationLogger<TCategoryName>
- Default implementation of IOperationLogger<TCategoryName>
-which logs activity start / end events as Information messages.
+ ActivityPropagationHandler
+ ActivityPropagationHandler propagates the current Activity to the downstream service
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
index b7a6b75e4..9bef7e32d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
@@ -75,15 +75,6 @@
- Classes
-
- MonotonicTimer
- Provides a way to measure time in a monotonic fashion, immune to any system clock changes.
-The time is measured from the moment the class is instantiated.
-
- MonotonicTimerExtensions
- Extension methods for MonotonicTimer.
-
Interfaces
IRandomFactory
diff --git a/docs/docfx/_site/api/index.html b/docs/docfx/_site/api/index.html
index fe96fb5d2..b20b5cb8d 100644
--- a/docs/docfx/_site/api/index.html
+++ b/docs/docfx/_site/api/index.html
@@ -78,7 +78,7 @@ API Documentation for YARP
diff --git a/docs/docfx/_site/api/toc.html b/docs/docfx/_site/api/toc.html
index 2aafef250..3a56033d4 100644
--- a/docs/docfx/_site/api/toc.html
+++ b/docs/docfx/_site/api/toc.html
@@ -43,6 +43,12 @@
Microsoft.ReverseProxy.Abstractions
@@ -108,148 +135,125 @@
- Microsoft.ReverseProxy.Abstractions.Telemetry
+ Microsoft.ReverseProxy.Middleware
-
-
-
- Microsoft.ReverseProxy.Abstractions.Time
-
-
- Microsoft.ReverseProxy.Configuration.Contract
+ Microsoft.ReverseProxy.RuntimeModel
-
-
-
- Microsoft.ReverseProxy.Middleware
-
-
- Microsoft.ReverseProxy.RuntimeModel
+ Microsoft.ReverseProxy.Service
- Microsoft.ReverseProxy.Service
+ Microsoft.ReverseProxy.Service.HealthChecks
@@ -383,13 +387,7 @@
@@ -401,12 +399,6 @@
IRandomFactory
-
- MonotonicTimer
-
-
- MonotonicTimerExtensions
-
diff --git a/docs/docfx/_site/articles/authn-authz.html b/docs/docfx/_site/articles/authn-authz.html
index 3220ee80c..a3c0fcd03 100644
--- a/docs/docfx/_site/articles/authn-authz.html
+++ b/docs/docfx/_site/articles/authn-authz.html
@@ -151,7 +151,7 @@ Swapping authentication types
diff --git a/docs/docfx/_site/articles/configfiles.html b/docs/docfx/_site/articles/configfiles.html
index 9a891d1e6..4a095a63a 100644
--- a/docs/docfx/_site/articles/configfiles.html
+++ b/docs/docfx/_site/articles/configfiles.html
@@ -103,7 +103,7 @@
Loading Configuration
}
Configuration contract
-File-based configuration is defined by the types in Microsoft.ReverseProxy.Configuration.Contract namespace. Contract types have a simple POCO-like design aimed to a convenient serialization/deserialization, but not to an efficient usage in runtime. There is another runtime-friendly abstract model living in Microsoft.ReverseProxy.Abstractions namespace that is used by the most of reverse proxy logic. The default IProxyConfigProvider implementation converts Contracts to Abstractions on the applicaiton start and each time the configuration changes.
+File-based configuration is dynamically mapped to the types in Microsoft.ReverseProxy.Abstractions namespace by an IProxyConfigProvider implementation converts at application start and each time the configuration changes.
Configuration Structure
The configuration consists of a named section that you specified above via Configuration.GetSection("ReverseProxy")
, and contains subsections for routes and clusters.
Example:
@@ -137,11 +137,11 @@ Routes
ClusterId - Refers to the name of an entry in the clusters section.
Match containing either a Hosts array or a Path pattern string.
-Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
+Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
The proxy will apply the given matching criteria and policies, and then pass off the request to the specified cluster.
Clusters
The clusters section is an unordered collection of named clusters. A cluster primarily contains a collection of named destinations and their addresses, any of which is considered capable of handling requests for a given route. The proxy will process the request according to the route and cluster configuration in order to select a destination.
-For additional fields see Cluster.
+For additional fields see Cluster.
@@ -150,7 +150,7 @@ Clusters
diff --git a/docs/docfx/_site/articles/configproviders.html b/docs/docfx/_site/articles/configproviders.html
index e582b431b..468a4311c 100644
--- a/docs/docfx/_site/articles/configproviders.html
+++ b/docs/docfx/_site/articles/configproviders.html
@@ -224,7 +224,7 @@
Example
diff --git a/docs/docfx/_site/articles/cors.html b/docs/docfx/_site/articles/cors.html
index fb3ac4127..1cd10fc2a 100644
--- a/docs/docfx/_site/articles/cors.html
+++ b/docs/docfx/_site/articles/cors.html
@@ -139,7 +139,7 @@
Disable CORS
diff --git a/docs/docfx/_site/articles/dests-health-checks.html b/docs/docfx/_site/articles/dests-health-checks.html
new file mode 100644
index 000000000..3a97839a0
--- /dev/null
+++ b/docs/docfx/_site/articles/dests-health-checks.html
@@ -0,0 +1,395 @@
+
+
+
+
+
+
+
+
Destination health checks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/articles/direct-proxing.html b/docs/docfx/_site/articles/direct-proxing.html
deleted file mode 100644
index 2fc0a6564..000000000
--- a/docs/docfx/_site/articles/direct-proxing.html
+++ /dev/null
@@ -1,191 +0,0 @@
-
-
-
-
-
-
-
- Direct Proxying
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/articles/direct-proxying.html b/docs/docfx/_site/articles/direct-proxying.html
index e0ecc813e..73ff791ed 100644
--- a/docs/docfx/_site/articles/direct-proxying.html
+++ b/docs/docfx/_site/articles/direct-proxying.html
@@ -158,7 +158,7 @@ Error handling
diff --git a/docs/docfx/_site/articles/getting_started.html b/docs/docfx/_site/articles/getting_started.html
index 27e0abf43..be48d6bf2 100644
--- a/docs/docfx/_site/articles/getting_started.html
+++ b/docs/docfx/_site/articles/getting_started.html
@@ -70,7 +70,7 @@
Getting Started with YARP
YARP is designed as a library that provides the core proxy functionality which you can then customize by adding or replacing modules. YARP is currently provided as a NuGet package and code snippets. We plan on providing a project template and pre-built exe in the future.
-YARP 1.0.0 Preview 6 supports ASP.NET Core 3.1 and 5.0.0 RC 2 or later. You can download the .NET 5 Preview SDK from https://dotnet.microsoft.com/download/dotnet/5.0. 5.0 requires Visual Studio 2019 v16.8 Preview3 or newer.
+YARP 1.0.0 Preview 7 supports ASP.NET Core 3.1 and 5.0.0. You can download the .NET 5 SDK from https://dotnet.microsoft.com/download/dotnet/5.0. .NET 5.0 on Windows requires Visual Studio 2019 v16.8 or newer.
Create a new project
Start by creating an "Empty" ASP.NET Core application using the command line:
dotnet new web -n MyProxy
@@ -85,7 +85,7 @@ Update the project file
And then add:
<ItemGroup>
- <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.6.*" />
+ <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.7.*" />
</ItemGroup>
Update Startup
@@ -162,7 +162,7 @@ Configuration
diff --git a/docs/docfx/_site/articles/header-routing.html b/docs/docfx/_site/articles/header-routing.html
index fee7a0f49..b1643e878 100644
--- a/docs/docfx/_site/articles/header-routing.html
+++ b/docs/docfx/_site/articles/header-routing.html
@@ -220,7 +220,7 @@
Configuration
};
Contract
-RouteHeaderData defines the configuration contract, where RouteHeader defines the code contract. The only difference in these contracts is that RouteHeaderData defines an extra Value
property for convenience, Values
is preferred if specified.
+RouteHeader defines the code contract and is mapped from config.
Name
The header name to check for on the request. A non-empty value is required. This field is case-insensitive per the HTTP RFCs.
Values
@@ -300,7 +300,7 @@ Scenario 4 - Multiple Headers
diff --git a/docs/docfx/_site/articles/index.html b/docs/docfx/_site/articles/index.html
index e9125f334..219ebb2d0 100644
--- a/docs/docfx/_site/articles/index.html
+++ b/docs/docfx/_site/articles/index.html
@@ -77,7 +77,7 @@
Welcome to the docs
diff --git a/docs/docfx/_site/articles/proxyhttpclientconfig.html b/docs/docfx/_site/articles/proxyhttpclientconfig.html
index c4fac7d56..94264d150 100644
--- a/docs/docfx/_site/articles/proxyhttpclientconfig.html
+++ b/docs/docfx/_site/articles/proxyhttpclientconfig.html
@@ -72,9 +72,12 @@
Proxy HTTP Client Configuration
Introduced: preview5
Introduction
Each Cluster has a dedicated HttpMessageInvoker instance used to proxy requests to its Destinations. The configuration is defined per cluster. On YARP startup, all Clusters
get new HttpMessageInvoker
instances, however if later the Cluster
configuration gets changed the IProxyHttpClientFactory will re-run and decide if it should create a new HttpMessageInvoker
or keep using the existing one. The default IProxyHttpClientFactory
implementation creates a new HttpMessageInvoker
when there are changes to the ProxyHttpClientOptions.
+Properties of outgoing requests for a given cluster can be configured as well. They are defined in ProxyHttpRequestOptions.
The configuration is represented differently if you're using the IConfiguration model or the code-first model.
IConfiguration
-HTTP client configuration contract consists of ProxyHttpClientData and CertificateConfigData types defining the following configuration schema. These types are focused on defining serializable configuration. The code based HTTP client configuration model is described below in the "Code Configuration" section.
+These types are focused on defining serializable configuration. The code based configuration model is described below in the "Code Configuration" section.
+HttpClient
+HTTP client configuration is based on ProxyHttpClientOptions and represented by the following configuration schema.
"HttpClient": {
"SslProtocols": [ "<protocol-names>" ],
"MaxConnectionsPerServer": "<int>",
@@ -140,8 +143,22 @@ IConfiguration
}
+HttpRequest
+HTTP request configuration is based on ProxyHttpRequestOptions and represented by the following configuration schema.
+"HttpRequest": {
+ "RequestTimeout": "<timespan>",
+ "Version": "<string>",
+ "VersionPolicy": ["RequestVersionOrLower", "RequestVersionOrHigher", "RequestVersionExact"]
+}
+
+Configuration settings:
+
+- RequestTimeout - the timeout for the outgoing request sent by HttpMessageInvoker.SendAsync. If not specified, 100 seconds is used.
+- Version - outgoing request version. The supported values at the moment are
1.0
, 1.1
and 2
. Default value is 2.
+- VersionPolicy - defines how the final version is selected for the outgoing requests. This feature is available from .NET 5.0, see HttpRequestMessage.VersionPolicy. The default value is
RequestVersionOrLower
.
+
Configuration example
-The below example shows 2 samples of HTTP client configurations for cluster1
and cluster2
.
+The below example shows 2 samples of HTTP client and request configurations for cluster1
and cluster2
.
{
"Clusters": {
"cluster1": {
@@ -156,6 +173,9 @@ Configuration example
"MaxConnectionsPerServer": "10",
"DangerousAcceptAnyServerCertificate": "true"
},
+ "HttpRequest": {
+ "RequestTimeout": "00:00:30"
+ },
"Destinations": {
"cluster1/destination1": {
"Address": "https://localhost:10000/"
@@ -176,6 +196,10 @@ Configuration example
"Password": "1234abc"
}
},
+ "HttpRequest": {
+ "Version": "1.1",
+ "VersionPolicy": "RequestVersionExact"
+ },
"Destinations": {
"cluster2/destination1": {
"Address": "https://localhost:10001/"
@@ -186,7 +210,7 @@ Configuration example
}
Code Configuration
-HTTP client configuration abstraction constists of the only type ProxyHttpClientOptions defined as follows.
+HTTP client configuration abstraction consists of the only type ProxyHttpClientOptions defined as follows.
public sealed class ProxyHttpClientOptions
{
public List<SslProtocols> SslProtocols { get; set; }
@@ -198,7 +222,7 @@ Code Configuration
public int? MaxConnectionsPerServer { get; set; }
}
-Note that instead of defining certificate location as it was in CertificateConfigData model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
+Note that instead of defining certificate location as it was in the config model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
The following is an example of ProxyHttpClientOptions
using code based configuration. An instance of ProxyHttpClientOptions
is assigned to the Cluster.HttpClient property before passing the Cluster
array to LoadFromMemory
method.
public void ConfigureServices(IServiceCollection services)
{
@@ -235,6 +259,7 @@ Code Configuration
Custom IProxyHttpClientFactory
In case the direct control on a proxy HTTP client construction is necessary, the default IProxyHttpClientFactory can be replaced with a custom one. In example, that custom logic can use Cluster's metadata as an extra data source for HttpMessageInvoker configuration. However, it's still recommended for any custom factory to set the following HttpMessageInvoker
properties to the same values as the default factory does in order to preserve a correct reverse proxy behavior.
+Always return an HttpMessageInvoker instance rather than an HttpClient instance which derives from HttpMessageInvoker. HttpClient buffers responses by default which breaks streaming scenarios and increases memory usage and latency.
new SocketsHttpHandler
{
UseProxy = false,
@@ -295,7 +320,7 @@ Custom IProxyHttpClientFactory
diff --git a/docs/docfx/_site/articles/runtimes.html b/docs/docfx/_site/articles/runtimes.html
index 4b7aabc44..8b8bf8f9b 100644
--- a/docs/docfx/_site/articles/runtimes.html
+++ b/docs/docfx/_site/articles/runtimes.html
@@ -93,7 +93,7 @@
Related 5.0 Runtime Improvements
diff --git a/docs/docfx/_site/articles/session-affinity.html b/docs/docfx/_site/articles/session-affinity.html
index b25129a10..ae8348f1b 100644
--- a/docs/docfx/_site/articles/session-affinity.html
+++ b/docs/docfx/_site/articles/session-affinity.html
@@ -153,7 +153,7 @@
Request pipeline
diff --git a/docs/docfx/_site/articles/toc.html b/docs/docfx/_site/articles/toc.html
index 66281f436..c4cee7bcd 100644
--- a/docs/docfx/_site/articles/toc.html
+++ b/docs/docfx/_site/articles/toc.html
@@ -45,6 +45,9 @@
Transforms
+
+ Destinations health checks
+
diff --git a/docs/docfx/_site/articles/transforms.html b/docs/docfx/_site/articles/transforms.html
index b3d79b8b9..491011275 100644
--- a/docs/docfx/_site/articles/transforms.html
+++ b/docs/docfx/_site/articles/transforms.html
@@ -841,7 +841,7 @@ Extensibility
diff --git a/docs/docfx/_site/index.html b/docs/docfx/_site/index.html
index 93a842d54..b208cd896 100644
--- a/docs/docfx/_site/index.html
+++ b/docs/docfx/_site/index.html
@@ -75,7 +75,7 @@
YARP: A Reverse Proxy
diff --git a/docs/docfx/_site/manifest.json b/docs/docfx/_site/manifest.json
index 5fc682fb6..a48da5ff2 100644
--- a/docs/docfx/_site/manifest.json
+++ b/docs/docfx/_site/manifest.json
@@ -1,6 +1,6 @@
{
"homepages": [],
- "source_base_path": "C:/dev/git/reverse-proxy/docs/docfx",
+ "source_base_path": "D:/github/reverse-proxy/docs/docfx",
"xrefmap": "xrefmap.yml",
"files": [
{
@@ -9,7 +9,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.AspNetCore.Builder.ProxyMiddlewareAppBuilderExtensions.html",
- "hash": "0iH4vVLb84MKs5w3utZJ5g=="
+ "hash": "rUGpr/bI1IaI4lP5HIX0Qw=="
}
},
"is_incremental": false,
@@ -21,7 +21,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.AspNetCore.Builder.ReverseProxyIEndpointRouteBuilderExtensions.html",
- "hash": "v1YLblngiBZp5b4ExBJE9Q=="
+ "hash": "SBKjrIEOfODQEL4p7fx7FA=="
}
},
"is_incremental": false,
@@ -57,7 +57,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.Extensions.DependencyInjection.ReverseProxyServiceCollectionExtensions.html",
- "hash": "0AVUed1BI+0VvNXBdkeZQQ=="
+ "hash": "FXHzIqDjHOzuk6Ec6sr5uw=="
}
},
"is_incremental": false,
@@ -75,6 +75,30 @@
"is_incremental": false,
"version": ""
},
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckMonitorOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckMonitorOptions.html",
+ "hash": "EGLqp10Ys36/wzfGsKwu1A=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.html",
+ "hash": "U78qXczZS6Oizb7XZiNofw=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.CircuitBreakerOptions.yml",
@@ -93,7 +117,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.Cluster.html",
- "hash": "NU75o+eHFfLYa+Uk4oTeKw=="
+ "hash": "ABzkQs6DI78rMz45eYa7Uw=="
}
},
"is_incremental": false,
@@ -171,13 +195,25 @@
"is_incremental": false,
"version": ""
},
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html",
+ "hash": "1pjy+ARdukqWA40+AIcDsA=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Destination.yml",
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.Destination.html",
- "hash": "AXyCoWspUQANH/wDtQe/vQ=="
+ "hash": "J4F8IjMUodKDReOwKwqrGw=="
}
},
"is_incremental": false,
@@ -197,11 +233,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html",
- "hash": "bdK/D00LBZGzpMpyJ666MA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html",
+ "hash": "qVjm5HBHdpBT9PctoPqNtA=="
}
},
"is_incremental": false,
@@ -209,11 +245,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.html",
- "hash": "2EoBAk7ZmYIpYerVlsZXag=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html",
+ "hash": "X6USpT2Z75ne4n2BcGY1lw=="
}
},
"is_incremental": false,
@@ -221,11 +257,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.html",
- "hash": "l18gBxgYiYAejlxGF82YQQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html",
+ "hash": "yiD+H/XrrwTNAA+7NFdi6w=="
}
},
"is_incremental": false,
@@ -233,11 +269,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html",
- "hash": "SnCmzT4dCJ5LSWbYNUdfYQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html",
+ "hash": "ZEDiSmFxaBnEoq5ohfi51A=="
}
},
"is_incremental": false,
@@ -245,11 +281,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.html",
- "hash": "KezQiTAAkvceoGZ9Dhf8yg=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.html",
+ "hash": "2EoBAk7ZmYIpYerVlsZXag=="
}
},
"is_incremental": false,
@@ -257,11 +293,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.html",
- "hash": "i3wJdGhr0O83T1eEB4E0tw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.html",
+ "hash": "l18gBxgYiYAejlxGF82YQQ=="
}
},
"is_incremental": false,
@@ -269,11 +305,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.html",
- "hash": "OBa+3tjFya+s+NKvzWkozA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html",
+ "hash": "SAp57Uauks7oB9X/HG3qPA=="
}
},
"is_incremental": false,
@@ -281,11 +317,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.html",
- "hash": "mQg9BwpUBy5Fq8R6BrjJdw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html",
+ "hash": "xvpANgQSFfDeAcX5jjkKfA=="
}
},
"is_incremental": false,
@@ -293,11 +329,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.html",
- "hash": "NyfXUn4Rc7ES1Qmb7ILWcQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html",
+ "hash": "VU60ROZMYH4q4iddN4AfIQ=="
}
},
"is_incremental": false,
@@ -305,11 +341,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html",
- "hash": "X8u6oxtu8bRFxbx1TTzRng=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.html",
+ "hash": "KezQiTAAkvceoGZ9Dhf8yg=="
}
},
"is_incremental": false,
@@ -317,11 +353,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationLogger-1.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationLogger-1.html",
- "hash": "oCn3Md/1u6nIvvnvjA5c8g=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.html",
+ "hash": "i3wJdGhr0O83T1eEB4E0tw=="
}
},
"is_incremental": false,
@@ -329,11 +365,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.html",
- "hash": "MjbJz2bGJEm2Vnwd64if2w=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.html",
+ "hash": "OBa+3tjFya+s+NKvzWkozA=="
}
},
"is_incremental": false,
@@ -341,11 +377,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html",
- "hash": "94yrD0fxEeoj6lODwaVKxw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.html",
+ "hash": "mQg9BwpUBy5Fq8R6BrjJdw=="
}
},
"is_incremental": false,
@@ -353,11 +389,23 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.html",
- "hash": "ya3KexAl6h59yDqBxHMCWw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.html",
+ "hash": "NyfXUn4Rc7ES1Qmb7ILWcQ=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.html",
+ "hash": "CPlGWRQQCip16vs1QBy+Cg=="
}
},
"is_incremental": false,
@@ -369,7 +417,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.html",
- "hash": "QWMdTjZAsVs86S6ibm1IiQ=="
+ "hash": "GYUtBGiz1oMnu3s0ka4s9w=="
}
},
"is_incremental": false,
@@ -377,11 +425,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html",
- "hash": "koopzZxA4VGQfXMDNsA+/A=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.html",
+ "hash": "rWw4JUsfy4CdSjxuVVS7Hg=="
}
},
"is_incremental": false,
@@ -389,11 +437,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html",
- "hash": "uyeE439kI/ZftO98+F6kdw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html",
+ "hash": "tq04OuG067cV1dSXvrKbCw=="
}
},
"is_incremental": false,
@@ -401,11 +449,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html",
- "hash": "qWSx59EQy2Uuq8cE21zegA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html",
+ "hash": "N2kylMUvVUwNvVeHqyMP+Q=="
}
},
"is_incremental": false,
@@ -413,11 +461,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html",
- "hash": "W7zcEbBMm3T14PnL+MSiHA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.html",
+ "hash": "biiONfwN1HFhIQGsdoNOFg=="
}
},
"is_incremental": false,
@@ -425,11 +473,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html",
- "hash": "0A5kK99JUeqxvsKawl8oVA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html",
+ "hash": "JhWl4heL24/TKhvvJj7CGQ=="
}
},
"is_incremental": false,
@@ -437,11 +485,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html",
- "hash": "M+VTWnSOnt1j5Ereu1Fa0Q=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html",
+ "hash": "ELZGrJT2k+Air6HblOgNnw=="
}
},
"is_incremental": false,
@@ -449,11 +497,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html",
- "hash": "BFienEpLYvyxl8/PsVvBFg=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html",
+ "hash": "c75TROJ2lZ4kl956MEqb/g=="
}
},
"is_incremental": false,
@@ -461,11 +509,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html",
- "hash": "1A8Sy4GYD93c/nBmrtXPhw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html",
+ "hash": "OPy1SqgMnKA8ikJQeGzklQ=="
}
},
"is_incremental": false,
@@ -473,11 +521,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html",
- "hash": "mc0BphcCz0t7EPEtd1ky0A=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html",
+ "hash": "VM+z9xn53JLV7mIIU/hxvw=="
}
},
"is_incremental": false,
@@ -485,11 +533,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html",
- "hash": "JV9j0rqnEyUxvXFwrgLBRA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html",
+ "hash": "W6MnCN+VVDU0N52sx2fPiw=="
}
},
"is_incremental": false,
@@ -497,11 +545,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html",
- "hash": "wWepQK0q5UIfjdcFhYe3IA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html",
+ "hash": "4ILnC6H0XbZBydWaRWeJQw=="
}
},
"is_incremental": false,
@@ -509,11 +557,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html",
- "hash": "DcO5MSRpMKTJyLbC8vZ9PQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html",
+ "hash": "ISsagbk5oc9nZ3d9kHoMIQ=="
}
},
"is_incremental": false,
@@ -521,11 +569,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html",
- "hash": "7eVaISRL70u9/a1Fv2N95A=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html",
+ "hash": "5efHLZ6OBbP4G25UHO1VzQ=="
}
},
"is_incremental": false,
@@ -533,11 +581,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html",
- "hash": "HAjlngBJMTWUGkgDK4Ycuw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html",
+ "hash": "tlYQ10fEHl9iqF9sEHunxw=="
}
},
"is_incremental": false,
@@ -545,11 +593,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.html",
- "hash": "r6fS2jzVnQbtUlXN5o2Pbw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html",
+ "hash": "4iwP6XodBgOjTKbQLv3dxA=="
}
},
"is_incremental": false,
@@ -557,11 +605,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.html",
- "hash": "VnX0oACiL8nnywaUrzoMSQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.html",
+ "hash": "vRnKwvub0/X51yK0t3Djug=="
}
},
"is_incremental": false,
@@ -569,11 +617,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html",
- "hash": "4PvNqp3BfGr6La7t+ufYyA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html",
+ "hash": "+fKuR3ME6P6J4iCpFAt+Lg=="
}
},
"is_incremental": false,
@@ -581,11 +629,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.html",
- "hash": "kpv2T9yUVd3JaIoExp3IQA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html",
+ "hash": "tqz9MrMjOziOb18D+QJzHw=="
}
},
"is_incremental": false,
@@ -593,11 +641,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html",
- "hash": "NboBIZrVVGV2k3Co2wf2QA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html",
+ "hash": "zsqz8M8yLfYuVzxmTlpmqw=="
}
},
"is_incremental": false,
@@ -605,11 +653,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html",
- "hash": "8K9oOqywzrQzvaojgITzhA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html",
+ "hash": "LEmQ0sXjbrkFBtVrNYwwuQ=="
}
},
"is_incremental": false,
@@ -617,11 +665,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html",
- "hash": "HqM5j69OfVRNFPXpLEK1uw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.html",
+ "hash": "PMxHMpnwCdk/gQNwePqtrA=="
}
},
"is_incremental": false,
@@ -629,11 +677,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html",
- "hash": "s+4/TPSxYlbvF/4JLziGig=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html",
+ "hash": "yccxVuklp3je0afHgtyA/Q=="
}
},
"is_incremental": false,
@@ -641,11 +689,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html",
- "hash": "MLeleAy44YXS+OSPVjZPlQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html",
+ "hash": "M904PmxOhQIdrJbcOySbOg=="
}
},
"is_incremental": false,
@@ -653,11 +701,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html",
- "hash": "ku4YD/izFyqdWkIwwGUwMA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html",
+ "hash": "NrxQMJkzDNlckgfqOAR5Aw=="
}
},
"is_incremental": false,
@@ -665,11 +713,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html",
- "hash": "0ci+hjl1EYcy3+mzxWFiHQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html",
+ "hash": "YTUJum05ztmiqzfYJIHyeg=="
}
},
"is_incremental": false,
@@ -677,11 +725,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.html",
- "hash": "vRnKwvub0/X51yK0t3Djug=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html",
+ "hash": "axB2wqKt9qFcpPzDnmIeYA=="
}
},
"is_incremental": false,
@@ -689,11 +737,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html",
- "hash": "48ITkAHvUPojmlBk4MXMlQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html",
+ "hash": "9PlUo2E11ZZRXPGLemuyzQ=="
}
},
"is_incremental": false,
@@ -701,11 +749,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html",
- "hash": "VC1e5gsqHRZot2fS77r5EQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html",
+ "hash": "MBIBhinTEVSpJtObJXr5nQ=="
}
},
"is_incremental": false,
@@ -713,11 +761,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.html",
- "hash": "yrXsGAR+YwprRXEKxyjO+w=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.html",
+ "hash": "b73TtFCguLr9Ml1uEk8tkQ=="
}
},
"is_incremental": false,
@@ -825,7 +873,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html",
- "hash": "7gz1FT6j2YND/p5oEnQoFQ=="
+ "hash": "O0gcMSD2pEKyDcNSB19SEg=="
}
},
"is_incremental": false,
@@ -885,7 +933,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html",
- "hash": "B4MCWM8SmnHoVqUPh8lb0w=="
+ "hash": "TEjTAzubQ8SVxoMVu+0T8g=="
}
},
"is_incremental": false,
@@ -897,7 +945,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html",
- "hash": "Mzgbgj/npPtxEJ07GZdIeQ=="
+ "hash": "HNr5qvUA7++us7n5G+zd0w=="
}
},
"is_incremental": false,
@@ -921,7 +969,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html",
- "hash": "1DPYDBO4/6kX1SOkWsJncw=="
+ "hash": "BrXnmwACLrvgzWi3w9oI7w=="
}
},
"is_incremental": false,
@@ -945,7 +993,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html",
- "hash": "GC5eBGENM0hSlDparPdUfQ=="
+ "hash": "5S2TkRxsKoTm1x3ktON5fQ=="
}
},
"is_incremental": false,
@@ -969,7 +1017,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html",
- "hash": "naQt3ohxsTT4SsF+5NNksg=="
+ "hash": "VWU5xEOEE86NpOYIRjN8Xg=="
}
},
"is_incremental": false,
@@ -1005,7 +1053,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html",
- "hash": "Q4GMRvPhIikFEC1svX4vkQ=="
+ "hash": "oXcPeaXhwIotwJD43xz9MQ=="
}
},
"is_incremental": false,
@@ -1029,7 +1077,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html",
- "hash": "LMHe8cO/wvOhgnLd1cE5+w=="
+ "hash": "wRpEjFglVYMMcxiClN8doQ=="
}
},
"is_incremental": false,
@@ -1053,7 +1101,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html",
- "hash": "KIwNdWIdOW029Bxm8ZUtOQ=="
+ "hash": "z1Lo33fRG+O5sFKKbhAdag=="
}
},
"is_incremental": false,
@@ -1065,7 +1113,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html",
- "hash": "2n2e2A0+8/S/C7gjSfn6eg=="
+ "hash": "k2kQhQ2qC1OOAH2ZMMXjiw=="
}
},
"is_incremental": false,
@@ -1077,7 +1125,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html",
- "hash": "JqCeAZU6tVzhb2PAnWzCGA=="
+ "hash": "6BqzeozAeIWKJal4YxmrDg=="
}
},
"is_incremental": false,
@@ -1089,7 +1137,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html",
- "hash": "fPKd1P2N+8+efu4Q01GhlQ=="
+ "hash": "OHhRzS/XGqb2dj1J54QG2w=="
}
},
"is_incremental": false,
@@ -1101,7 +1149,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html",
- "hash": "mLowqwAd/473hMDzSD3GXA=="
+ "hash": "KSK/EMZveivW2lUDOqo38Q=="
}
},
"is_incremental": false,
@@ -1149,7 +1197,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html",
- "hash": "a2uEgTb0dGbHYdRyFK3tLQ=="
+ "hash": "QrCeFNWwYEWysVMJNw7EWQ=="
}
},
"is_incremental": false,
@@ -1209,7 +1257,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html",
- "hash": "Kx2zsOP0EjfjmHYG/RfZsQ=="
+ "hash": "khWuTYV5EOYg0pqbLKJ7xQ=="
}
},
"is_incremental": false,
@@ -1241,35 +1289,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html",
- "hash": "7aMrnwlQJLGdBw4+GyeFrQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html",
- "hash": "GvX8ZRJtpDIThtVk+R/pIw=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html",
- "hash": "oAk6Mv0QZ/NaoBIv0uXoIA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html",
+ "hash": "r7kScMqp10d/pS9mrW+nug=="
}
},
"is_incremental": false,
@@ -1281,7 +1305,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Telemetry.html",
- "hash": "DxRp6zT5NGItus5+gOzarg=="
+ "hash": "gdrtth6hoF+P7lr33XM6Jg=="
}
},
"is_incremental": false,
@@ -1299,37 +1323,13 @@
"is_incremental": false,
"version": ""
},
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html",
- "hash": "7jFIIhGHZjmlK+pdc1uNNQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html",
- "hash": "9wwBYTSt/WWhXSHclUtXVQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Utilities.yml",
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Utilities.html",
- "hash": "D/Zd5OJPrCbKkHjLFITkmA=="
+ "hash": "J3UhWzw02tgQdWqpfcLu9g=="
}
},
"is_incremental": false,
@@ -1341,7 +1341,7 @@
"output": {
".html": {
"relative_path": "api/index.html",
- "hash": "3QtCNC01d92mykx1L1Fh0w=="
+ "hash": "/qlNhfKxQa2Ube8Z8+HXlw=="
}
},
"is_incremental": false,
@@ -1353,7 +1353,7 @@
"output": {
".html": {
"relative_path": "api/toc.html",
- "hash": "RO1cR93VZl5gdLGDYlAFRQ=="
+ "hash": "B4KnwTGzMMoBQDbmZkmhhg=="
}
},
"is_incremental": false,
@@ -1365,7 +1365,7 @@
"output": {
".html": {
"relative_path": "articles/authn-authz.html",
- "hash": "TQe80fBE4ABTvhDJarLA+Q=="
+ "hash": "3E7vQTCSFn7xpKAnps25vg=="
}
},
"is_incremental": false,
@@ -1377,7 +1377,7 @@
"output": {
".html": {
"relative_path": "articles/configfiles.html",
- "hash": "QwrVp0hhnV6aLB3AIcaq5A=="
+ "hash": "okBpFc21sfk9g0kIdWFC6Q=="
}
},
"is_incremental": false,
@@ -1389,7 +1389,7 @@
"output": {
".html": {
"relative_path": "articles/configproviders.html",
- "hash": "uXw/udLmJB2q804DroPGQA=="
+ "hash": "Nx9NBlMZEIAKEeOu02xQIQ=="
}
},
"is_incremental": false,
@@ -1401,7 +1401,19 @@
"output": {
".html": {
"relative_path": "articles/cors.html",
- "hash": "bKgS9ApyepD+/ogqfiAQnw=="
+ "hash": "ETLDVVlj/XjzSl6OCleJ2Q=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "Conceptual",
+ "source_relative_path": "articles/dests-health-checks.md",
+ "output": {
+ ".html": {
+ "relative_path": "articles/dests-health-checks.html",
+ "hash": "9smCO8BuoKTtjamTPJ5hTQ=="
}
},
"is_incremental": false,
@@ -1413,7 +1425,7 @@
"output": {
".html": {
"relative_path": "articles/direct-proxying.html",
- "hash": "5TLVXNGiLgYC0/IRubsUEA=="
+ "hash": "l7mYYKRvlrLMGXZsSUf5pg=="
}
},
"is_incremental": false,
@@ -1425,7 +1437,7 @@
"output": {
".html": {
"relative_path": "articles/getting_started.html",
- "hash": "tih0RBGq4rNdVsK3okQMNA=="
+ "hash": "tESbJYps9XSY6qw34CcqiQ=="
}
},
"is_incremental": false,
@@ -1437,7 +1449,7 @@
"output": {
".html": {
"relative_path": "articles/header-routing.html",
- "hash": "G2iEtXBrmZ3yEUyiAGgmVQ=="
+ "hash": "VJLbcAdRX9WHxYcqZUgBig=="
}
},
"is_incremental": false,
@@ -1449,7 +1461,7 @@
"output": {
".html": {
"relative_path": "articles/index.html",
- "hash": "PhAK2BFOYumVGLAlOm+1PA=="
+ "hash": "TKptfQDc2u+Hwa+QLWmrTQ=="
}
},
"is_incremental": false,
@@ -1461,7 +1473,7 @@
"output": {
".html": {
"relative_path": "articles/proxyhttpclientconfig.html",
- "hash": "iwCw9ZcSwigBQolj0SYBjQ=="
+ "hash": "pevcd3DyYGy2DFOyuoeQbQ=="
}
},
"is_incremental": false,
@@ -1473,7 +1485,7 @@
"output": {
".html": {
"relative_path": "articles/runtimes.html",
- "hash": "WdXNL77+y2YDIjhRLfg2ag=="
+ "hash": "lFS17pHuAHG7+o3SQR3gYQ=="
}
},
"is_incremental": false,
@@ -1485,7 +1497,7 @@
"output": {
".html": {
"relative_path": "articles/session-affinity.html",
- "hash": "7/lKfyQl8ReexLitf8aT8w=="
+ "hash": "eCaQC+7MsaXsCi7TkUW0pA=="
}
},
"is_incremental": false,
@@ -1497,7 +1509,7 @@
"output": {
".html": {
"relative_path": "articles/toc.html",
- "hash": "QGxIPyiNO5apKiw6kJ/HRA=="
+ "hash": "VJTjSuBsiz+JTL4HowNdqQ=="
}
},
"is_incremental": false,
@@ -1509,7 +1521,7 @@
"output": {
".html": {
"relative_path": "articles/transforms.html",
- "hash": "32gpejncW6YbM+4sspxoGw=="
+ "hash": "Tkk+zTqyI83K8jiMOlGcWg=="
}
},
"is_incremental": false,
@@ -1521,7 +1533,7 @@
"output": {
".html": {
"relative_path": "index.html",
- "hash": "63TbMpCyXjykwrop2FsrqA=="
+ "hash": "JvBbUJROmTyIhX2ElO7b1g=="
}
},
"is_incremental": false,
@@ -1533,7 +1545,7 @@
"output": {
".html": {
"relative_path": "readme.html",
- "hash": "WvQ3lYCJcP4pJ+/7fjfnyA=="
+ "hash": "J/yMdpEFH+CdwLGxzHf8aA=="
}
},
"is_incremental": false,
@@ -1566,7 +1578,7 @@
"ConceptualDocumentProcessor": {
"can_incremental": false,
"incrementalPhase": "build",
- "total_file_count": 15,
+ "total_file_count": 16,
"skipped_file_count": 0
},
"ManagedReferenceDocumentProcessor": {
diff --git a/docs/docfx/_site/readme.html b/docs/docfx/_site/readme.html
index 74e1bed5a..98da74f9f 100644
--- a/docs/docfx/_site/readme.html
+++ b/docs/docfx/_site/readme.html
@@ -79,7 +79,7 @@
Publishing the docs
diff --git a/docs/docfx/_site/xrefmap.yml b/docs/docfx/_site/xrefmap.yml
index b81429549..d88bfacc3 100644
--- a/docs/docfx/_site/xrefmap.yml
+++ b/docs/docfx/_site/xrefmap.yml
@@ -928,6 +928,19 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.MaxConnectionsPerServer
nameWithType: ProxyHttpClientOptions.MaxConnectionsPerServer
+- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_PropagateActivityContext
+ commentId: P:Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ProxyHttpClientOptions.PropagateActivityContext
+- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext*
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_PropagateActivityContext_
+ commentId: Overload:Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ProxyHttpClientOptions.PropagateActivityContext
- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.SslProtocols
name: SslProtocols
href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_SslProtocols
@@ -1353,985 +1366,6 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.MinimalTotalCountThreshold
nameWithType: TransportFailureRateHealthPolicyOptions.MinimalTotalCountThreshold
-- uid: Microsoft.ReverseProxy.Configuration.Contract
- name: Microsoft.ReverseProxy.Configuration.Contract
- href: api/Microsoft.ReverseProxy.Configuration.Contract.html
- commentId: N:Microsoft.ReverseProxy.Configuration.Contract
- fullName: Microsoft.ReverseProxy.Configuration.Contract
- nameWithType: Microsoft.ReverseProxy.Configuration.Contract
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- name: ActiveHealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- nameWithType: ActiveHealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- nameWithType: ActiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- nameWithType: ActiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- name: Interval
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Interval
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- nameWithType: ActiveHealthCheckData.Interval
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval*
- name: Interval
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Interval_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- nameWithType: ActiveHealthCheckData.Interval
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- nameWithType: ActiveHealthCheckData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- nameWithType: ActiveHealthCheckData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Policy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- nameWithType: ActiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy*
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Policy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- nameWithType: ActiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- name: Timeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Timeout
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- nameWithType: ActiveHealthCheckData.Timeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout*
- name: Timeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Timeout_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- nameWithType: ActiveHealthCheckData.Timeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- name: CertificateConfigData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- nameWithType: CertificateConfigData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- name: AllowInvalid
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_AllowInvalid
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- nameWithType: CertificateConfigData.AllowInvalid
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid*
- name: AllowInvalid
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_AllowInvalid_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- nameWithType: CertificateConfigData.AllowInvalid
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- name: KeyPath
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_KeyPath
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- nameWithType: CertificateConfigData.KeyPath
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath*
- name: KeyPath
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_KeyPath_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- nameWithType: CertificateConfigData.KeyPath
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- name: Location
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Location
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- nameWithType: CertificateConfigData.Location
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location*
- name: Location
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Location_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- nameWithType: CertificateConfigData.Location
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- name: Password
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Password
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- nameWithType: CertificateConfigData.Password
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password*
- name: Password
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Password_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- nameWithType: CertificateConfigData.Password
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- nameWithType: CertificateConfigData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- nameWithType: CertificateConfigData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- name: Store
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Store
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- nameWithType: CertificateConfigData.Store
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store*
- name: Store
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Store_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- nameWithType: CertificateConfigData.Store
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- name: Subject
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Subject
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- nameWithType: CertificateConfigData.Subject
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject*
- name: Subject
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Subject_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- nameWithType: CertificateConfigData.Subject
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- name: CircuitBreakerData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- nameWithType: CircuitBreakerData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- name: MaxConcurrentRequests
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRequests
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- nameWithType: CircuitBreakerData.MaxConcurrentRequests
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests*
- name: MaxConcurrentRequests
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRequests_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- nameWithType: CircuitBreakerData.MaxConcurrentRequests
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- name: MaxConcurrentRetries
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRetries
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- nameWithType: CircuitBreakerData.MaxConcurrentRetries
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries*
- name: MaxConcurrentRetries
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRetries_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- nameWithType: CircuitBreakerData.MaxConcurrentRetries
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- name: ClusterData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- nameWithType: ClusterData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- name: CircuitBreaker
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_CircuitBreaker
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- nameWithType: ClusterData.CircuitBreaker
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker*
- name: CircuitBreaker
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_CircuitBreaker_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- nameWithType: ClusterData.CircuitBreaker
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- name: Destinations
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Destinations
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- nameWithType: ClusterData.Destinations
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations*
- name: Destinations
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Destinations_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- nameWithType: ClusterData.Destinations
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- name: HealthCheck
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HealthCheck
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- nameWithType: ClusterData.HealthCheck
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck*
- name: HealthCheck
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HealthCheck_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- nameWithType: ClusterData.HealthCheck
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- name: HttpClient
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpClient
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- nameWithType: ClusterData.HttpClient
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient*
- name: HttpClient
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpClient_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- nameWithType: ClusterData.HttpClient
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- name: HttpRequest
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpRequest
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- nameWithType: ClusterData.HttpRequest
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest*
- name: HttpRequest
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpRequest_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- nameWithType: ClusterData.HttpRequest
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- name: LoadBalancing
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_LoadBalancing
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- nameWithType: ClusterData.LoadBalancing
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing*
- name: LoadBalancing
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_LoadBalancing_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- nameWithType: ClusterData.LoadBalancing
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- nameWithType: ClusterData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- nameWithType: ClusterData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- name: Partitioning
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Partitioning
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- nameWithType: ClusterData.Partitioning
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning*
- name: Partitioning
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Partitioning_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- nameWithType: ClusterData.Partitioning
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- name: Quota
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Quota
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- nameWithType: ClusterData.Quota
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota*
- name: Quota
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Quota_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- nameWithType: ClusterData.Quota
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- name: SessionAffinity
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_SessionAffinity
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- nameWithType: ClusterData.SessionAffinity
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity*
- name: SessionAffinity
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_SessionAffinity_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- nameWithType: ClusterData.SessionAffinity
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- name: ClusterPartitioningData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- nameWithType: ClusterPartitioningData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- name: PartitionCount
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionCount
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- nameWithType: ClusterPartitioningData.PartitionCount
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount*
- name: PartitionCount
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionCount_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- nameWithType: ClusterPartitioningData.PartitionCount
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- name: PartitioningAlgorithm
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitioningAlgorithm
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- nameWithType: ClusterPartitioningData.PartitioningAlgorithm
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm*
- name: PartitioningAlgorithm
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitioningAlgorithm_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- nameWithType: ClusterPartitioningData.PartitioningAlgorithm
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- name: PartitionKeyExtractor
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionKeyExtractor
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- nameWithType: ClusterPartitioningData.PartitionKeyExtractor
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor*
- name: PartitionKeyExtractor
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionKeyExtractor_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- nameWithType: ClusterPartitioningData.PartitionKeyExtractor
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- name: ConfigurationData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- nameWithType: ConfigurationData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- name: Clusters
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Clusters
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- nameWithType: ConfigurationData.Clusters
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters*
- name: Clusters
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Clusters_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- nameWithType: ConfigurationData.Clusters
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- name: Routes
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Routes
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- nameWithType: ConfigurationData.Routes
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes*
- name: Routes
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Routes_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- nameWithType: ConfigurationData.Routes
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- name: DestinationData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- nameWithType: DestinationData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- name: Address
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Address
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- nameWithType: DestinationData.Address
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address*
- name: Address
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Address_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- nameWithType: DestinationData.Address
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- name: Health
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Health
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- nameWithType: DestinationData.Health
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health*
- name: Health
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Health_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- nameWithType: DestinationData.Health
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- nameWithType: DestinationData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- nameWithType: DestinationData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- name: HealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- nameWithType: HealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- name: Active
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Active
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- nameWithType: HealthCheckData.Active
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active*
- name: Active
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Active_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- nameWithType: HealthCheckData.Active
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- name: Passive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Passive
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- nameWithType: HealthCheckData.Passive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive*
- name: Passive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Passive_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- nameWithType: HealthCheckData.Passive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- name: LoadBalancingData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- nameWithType: LoadBalancingData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html#Microsoft_ReverseProxy_Configuration_Contract_LoadBalancingData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- nameWithType: LoadBalancingData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html#Microsoft_ReverseProxy_Configuration_Contract_LoadBalancingData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- nameWithType: LoadBalancingData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- name: PassiveHealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- nameWithType: PassiveHealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- nameWithType: PassiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- nameWithType: PassiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Policy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- nameWithType: PassiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy*
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Policy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- nameWithType: PassiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- name: ReactivationPeriod
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_ReactivationPeriod
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- nameWithType: PassiveHealthCheckData.ReactivationPeriod
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod*
- name: ReactivationPeriod
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_ReactivationPeriod_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- nameWithType: PassiveHealthCheckData.ReactivationPeriod
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- name: ProxyHttpClientData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- nameWithType: ProxyHttpClientData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- name: ClientCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_ClientCertificate
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- nameWithType: ProxyHttpClientData.ClientCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate*
- name: ClientCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_ClientCertificate_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- nameWithType: ProxyHttpClientData.ClientCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- name: DangerousAcceptAnyServerCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_DangerousAcceptAnyServerCertificate
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- nameWithType: ProxyHttpClientData.DangerousAcceptAnyServerCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate*
- name: DangerousAcceptAnyServerCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_DangerousAcceptAnyServerCertificate_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- nameWithType: ProxyHttpClientData.DangerousAcceptAnyServerCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- name: MaxConnectionsPerServer
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_MaxConnectionsPerServer
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- nameWithType: ProxyHttpClientData.MaxConnectionsPerServer
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer*
- name: MaxConnectionsPerServer
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_MaxConnectionsPerServer_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- nameWithType: ProxyHttpClientData.MaxConnectionsPerServer
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- name: SslProtocols
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_SslProtocols
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- nameWithType: ProxyHttpClientData.SslProtocols
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols*
- name: SslProtocols
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_SslProtocols_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- nameWithType: ProxyHttpClientData.SslProtocols
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- name: ProxyHttpRequestData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- nameWithType: ProxyHttpRequestData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- name: RequestTimeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_RequestTimeout
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- nameWithType: ProxyHttpRequestData.RequestTimeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout*
- name: RequestTimeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_RequestTimeout_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- nameWithType: ProxyHttpRequestData.RequestTimeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- name: Version
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_Version
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- nameWithType: ProxyHttpRequestData.Version
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version*
- name: Version
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_Version_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- nameWithType: ProxyHttpRequestData.Version
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- name: VersionPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_VersionPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- nameWithType: ProxyHttpRequestData.VersionPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy*
- name: VersionPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_VersionPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- nameWithType: ProxyHttpRequestData.VersionPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- name: ProxyMatchData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- nameWithType: ProxyMatchData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- name: Headers
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Headers
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- nameWithType: ProxyMatchData.Headers
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers*
- name: Headers
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Headers_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- nameWithType: ProxyMatchData.Headers
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- name: Hosts
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Hosts
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- nameWithType: ProxyMatchData.Hosts
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts*
- name: Hosts
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Hosts_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- nameWithType: ProxyMatchData.Hosts
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- name: Methods
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Methods
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- nameWithType: ProxyMatchData.Methods
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods*
- name: Methods
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Methods_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- nameWithType: ProxyMatchData.Methods
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- nameWithType: ProxyMatchData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- nameWithType: ProxyMatchData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- name: ProxyRouteData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- nameWithType: ProxyRouteData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- name: AuthorizationPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_AuthorizationPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- nameWithType: ProxyRouteData.AuthorizationPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy*
- name: AuthorizationPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_AuthorizationPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- nameWithType: ProxyRouteData.AuthorizationPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- name: ClusterId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_ClusterId
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- nameWithType: ProxyRouteData.ClusterId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId*
- name: ClusterId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_ClusterId_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- nameWithType: ProxyRouteData.ClusterId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- name: CorsPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_CorsPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- nameWithType: ProxyRouteData.CorsPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy*
- name: CorsPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_CorsPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- nameWithType: ProxyRouteData.CorsPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- name: Match
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Match
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- nameWithType: ProxyRouteData.Match
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match*
- name: Match
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Match_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- nameWithType: ProxyRouteData.Match
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- nameWithType: ProxyRouteData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- nameWithType: ProxyRouteData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- name: Order
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Order
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- nameWithType: ProxyRouteData.Order
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order*
- name: Order
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Order_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- nameWithType: ProxyRouteData.Order
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- name: RouteId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_RouteId
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- nameWithType: ProxyRouteData.RouteId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId*
- name: RouteId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_RouteId_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- nameWithType: ProxyRouteData.RouteId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- name: Transforms
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Transforms
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- nameWithType: ProxyRouteData.Transforms
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms*
- name: Transforms
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Transforms_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- nameWithType: ProxyRouteData.Transforms
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- name: QuotaData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- nameWithType: QuotaData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- name: Average
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Average
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- nameWithType: QuotaData.Average
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average*
- name: Average
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Average_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- nameWithType: QuotaData.Average
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- name: Burst
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Burst
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- nameWithType: QuotaData.Burst
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst*
- name: Burst
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Burst_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- nameWithType: QuotaData.Burst
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- name: RouteHeaderData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- nameWithType: RouteHeaderData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- name: IsCaseSensitive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_IsCaseSensitive
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- nameWithType: RouteHeaderData.IsCaseSensitive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive*
- name: IsCaseSensitive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_IsCaseSensitive_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- nameWithType: RouteHeaderData.IsCaseSensitive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- nameWithType: RouteHeaderData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- nameWithType: RouteHeaderData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- name: Name
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Name
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- nameWithType: RouteHeaderData.Name
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name*
- name: Name
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Name_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- nameWithType: RouteHeaderData.Name
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- name: Values
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Values
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- nameWithType: RouteHeaderData.Values
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values*
- name: Values
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Values_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- nameWithType: RouteHeaderData.Values
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- name: SessionAffinityData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- nameWithType: SessionAffinityData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- nameWithType: SessionAffinityData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- nameWithType: SessionAffinityData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- name: FailurePolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_FailurePolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- nameWithType: SessionAffinityData.FailurePolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy*
- name: FailurePolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_FailurePolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- nameWithType: SessionAffinityData.FailurePolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- nameWithType: SessionAffinityData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- nameWithType: SessionAffinityData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- name: Settings
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Settings
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- nameWithType: SessionAffinityData.Settings
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings*
- name: Settings
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Settings_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- nameWithType: SessionAffinityData.Settings
- uid: Microsoft.ReverseProxy.Middleware
name: Microsoft.ReverseProxy.Middleware
href: api/Microsoft.ReverseProxy.Middleware.html
@@ -2932,15 +1966,15 @@ references:
commentId: T:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions
fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions
nameWithType: ClusterProxyHttpClientOptions
-- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32})
- name: ClusterProxyHttpClientOptions(Nullable
, Boolean, X509Certificate2, Nullable)
- href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_System_Nullable_System_Security_Authentication_SslProtocols__System_Boolean_System_Security_Cryptography_X509Certificates_X509Certificate2_System_Nullable_System_Int32__
- commentId: M:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32})
- name.vb: ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32))
- fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable, System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable)
- fullName.vb: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable(Of System.Security.Authentication.SslProtocols), System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable(Of System.Int32))
- nameWithType: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable)
- nameWithType.vb: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32))
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32},System.Nullable{System.Boolean})
+ name: ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable, Nullable)
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_System_Nullable_System_Security_Authentication_SslProtocols__System_Boolean_System_Security_Cryptography_X509Certificates_X509Certificate2_System_Nullable_System_Int32__System_Nullable_System_Boolean__
+ commentId: M:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32},System.Nullable{System.Boolean})
+ name.vb: ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32), Nullable(Of Boolean))
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable, System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable, System.Nullable)
+ fullName.vb: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable(Of System.Security.Authentication.SslProtocols), System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable(Of System.Int32), System.Nullable(Of System.Boolean))
+ nameWithType: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable, Nullable)
+ nameWithType.vb: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32), Nullable(Of Boolean))
- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor*
name: ClusterProxyHttpClientOptions
href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_
@@ -3045,6 +2079,19 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.Inequality
nameWithType: ClusterProxyHttpClientOptions.Inequality
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_PropagateActivityContext
+ commentId: P:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ClusterProxyHttpClientOptions.PropagateActivityContext
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext*
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_PropagateActivityContext_
+ commentId: Overload:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ClusterProxyHttpClientOptions.PropagateActivityContext
- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.SslProtocols
name: SslProtocols
href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_SslProtocols
@@ -5502,6 +4549,44 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.Mode
nameWithType: ISessionAffinityProvider.Mode
+- uid: Microsoft.ReverseProxy.Telemetry
+ name: Microsoft.ReverseProxy.Telemetry
+ href: api/Microsoft.ReverseProxy.Telemetry.html
+ commentId: N:Microsoft.ReverseProxy.Telemetry
+ fullName: Microsoft.ReverseProxy.Telemetry
+ nameWithType: Microsoft.ReverseProxy.Telemetry
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ name: ActivityPropagationHandler
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
+ commentId: T:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ nameWithType: ActivityPropagationHandler
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor(System.Net.Http.HttpMessageHandler)
+ name: ActivityPropagationHandler(HttpMessageHandler)
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler__ctor_System_Net_Http_HttpMessageHandler_
+ commentId: M:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor(System.Net.Http.HttpMessageHandler)
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.ActivityPropagationHandler(System.Net.Http.HttpMessageHandler)
+ nameWithType: ActivityPropagationHandler.ActivityPropagationHandler(HttpMessageHandler)
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor*
+ name: ActivityPropagationHandler
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler__ctor_
+ commentId: Overload:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.ActivityPropagationHandler
+ nameWithType: ActivityPropagationHandler.ActivityPropagationHandler
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)
+ name: SendAsync(HttpRequestMessage, CancellationToken)
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler_SendAsync_System_Net_Http_HttpRequestMessage_System_Threading_CancellationToken_
+ commentId: M:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage, System.Threading.CancellationToken)
+ nameWithType: ActivityPropagationHandler.SendAsync(HttpRequestMessage, CancellationToken)
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync*
+ name: SendAsync
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler_SendAsync_
+ commentId: Overload:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync
+ nameWithType: ActivityPropagationHandler.SendAsync
- uid: Microsoft.ReverseProxy.Utilities
name: Microsoft.ReverseProxy.Utilities
href: api/Microsoft.ReverseProxy.Utilities.html
Quota / throttling options.
+Defines options for the active health check monitor.
public sealed class QuotaData
+ public class ActiveHealthCheckMonitorOptions
Average allowed in a time window.
+ +DefaultInterval
+Default probing interval.
Declaration
public double Average { get; set; }
+ public TimeSpan DefaultInterval { get; set; }
Property Value
Double | +TimeSpan |
Burst
-Burst allowance.
+ +DefaultTimeout
+Default probes timeout.
Declaration
public double Burst { get; set; }
+ public TimeSpan DefaultTimeout { get; set; }
Property Value
Double | +TimeSpan |
Interval
+ +Interval
Health probe interval.
Declaration
public TimeSpan Interval { get; set; }
+ public TimeSpan? Interval { get; set; }
Property Value
TimeSpan | +Nullable<TimeSpan> |
Path
-Http path.
+ +Path
+HTTP health check endpoint path.
Declaration
@@ -208,19 +208,19 @@Property Value
| - Improve this Doc + Improve this Doc - View Source + View Source - -Port
-Port number.
+ +Policy
+Active health check policy.
Declaration
public int Port { get; set; }
+ public string Policy { get; set; }
Property Value
Int32 | +String |
Timeout
-Health probe timeout, after which the targeted endpoint is considered unhealthy.
+ +Timeout
+Health probe timeout, after which a destination is considered unhealthy.
Declaration
public TimeSpan Timeout { get; set; }
+ public TimeSpan? Timeout { get; set; }
Property Value
TimeSpan | +Nullable<TimeSpan> |
HttpRequest
+Options of an outgoing HTTP request.
+Declaration
+public ProxyHttpRequestOptions HttpRequest { get; set; }
+ Property Value
+Type | +Description | +
---|---|
ProxyHttpRequestOptions | ++ |
Property Value
Improve this Doc - View Source + View SourceMetadata
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html similarity index 64% rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html index 25f945fdd..c8e0d2e14 100644 --- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html +++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html @@ -5,10 +5,10 @@ -Class DestinationData
+ Class ConsecutiveFailuresHealthPolicyOptions
- Describes a destination of a cluster.
+ Defines options for the consecutive failures active health check policy.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class DestinationData
+ public class ConsecutiveFailuresHealthPolicyOptions
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Address
- Address of this destination. E.g. https://127.0.0.1:123/abcd1234/
.
+ ThresholdMetadataName
+ Name of the consecutive failure threshold metadata parameter.
+It's the number of consecutive failure that needs to happen in order to mark a destination as unhealthy.
Declaration
- public string Address { get; set; }
+ public static readonly string ThresholdMetadataName
- Property Value
+ Field Value
@@ -144,21 +144,23 @@ Property Value
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Metadata
- Arbitrary key-value pairs that further describe this destination.
+
+ DefaultThreshold
+ Default consecutive failures threshold that is applied if it's not set on a cluster's metadata.
Declaration
- public IDictionary<string, string> Metadata { get; set; }
+ public long DefaultThreshold { get; set; }
Property Value
@@ -170,7 +172,7 @@ Property Value
- IDictionary<String, String>
+ Int64
@@ -183,10 +185,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
index 4ea91e63e..9efc27b36 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Destination.html
@@ -146,11 +146,42 @@
Property Value
|
- Improve this Doc
+ Improve this Doc
View Source
+
+ Health
+ Endpoint accepting active health check probes. E.g. http://127.0.0.1:1234/
.
+
+
+ Declaration
+
+ public string Health { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ String
+
+
+
+
+
+ |
+ Improve this Doc
+
+
+ View Source
+
Metadata
Arbitrary key-value pairs that further describe this destination.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
similarity index 73%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
index 0fed03a17..b9aa6389d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html
@@ -5,10 +5,10 @@
- Class LoadBalancingData
+ Class HealthCheckConstants.ActivePolicy
-
@@ -68,18 +68,17 @@
-
+
- Class LoadBalancingData
+ Class HealthCheckConstants.ActivePolicy
- Load balancing options.
-
+
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class LoadBalancingData
+ public static class ActivePolicy
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+ ConsecutiveFailures
Declaration
- public string Mode { get; set; }
+ public static readonly string ConsecutiveFailures
- Property Value
+ Field Value
@@ -151,10 +149,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
similarity index 70%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
index 7703f3a7c..e8cab6e8b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorFeature.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html
@@ -5,10 +5,10 @@
-
Class ProxyErrorFeature
+ Class HealthCheckConstants.PassivePolicy
-
@@ -68,21 +68,17 @@
-
+
- Class ProxyErrorFeature
+ Class HealthCheckConstants.PassivePolicy
-
- Namespace: Microsoft.ReverseProxy.Service.Proxy
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ProxyErrorFeature : IProxyErrorFeature
+ public static class PassivePolicy
- Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Error
+ TransportFailureRate
Declaration
- public Exception Error { get; set; }
+ public static readonly string TransportFailureRate
- Property Value
+ Field Value
@@ -141,15 +136,11 @@ Property Value
- Exception
+ String
- Implements
-
@@ -158,10 +149,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
index 9eac99823..d07e92f36 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html
@@ -5,10 +5,10 @@
-
Class NullOperationContext
+ Class HealthCheckConstants
-
@@ -68,23 +68,17 @@
-
+
- Class NullOperationContext
+ Class HealthCheckConstants
- Implementation of IOperationContext
-which doesn't do anything.
-
+
-
- Namespace: Microsoft.ReverseProxy.Telemetry
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
-
- public class NullOperationContext : IOperationContext
-
- Methods
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- SetProperty(String, String)
- Sets a property on the current operation context.
-
-
- Declaration
+ Syntax
- public void SetProperty(string key, string value)
-
- Parameters
-
-
-
- Type
- Name
- Description
-
-
-
-
- String
- key
- Property key.
-
-
-
- String
- value
- Property value.
-
-
-
-
- Implements
-
- IOperationContext
+ public static class HealthCheckConstants
@@ -170,10 +118,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
index 913fe0bfa..2fd0d0f39 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html
@@ -73,7 +73,7 @@
Class HealthCheckOptions
- Active health check options.
+ All health check options.
@@ -115,81 +115,19 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
-
-
- Enabled
- Whether health probes are enabled.
-
-
- Declaration
-
- public bool Enabled { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- Boolean
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- Interval
- Health probe interval.
-
-
- Declaration
-
- public TimeSpan Interval { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- TimeSpan
-
-
-
-
-
- |
- Improve this Doc
+ View Source
-
- View Source
-
-
- Path
- Http path.
+
+ Active
+ Active health check options.
Declaration
- public string Path { get; set; }
+ public ActiveHealthCheckOptions Active { get; set; }
Property Value
@@ -201,57 +139,26 @@ Property Value
- String
+ ActiveHealthCheckOptions
|
- Improve this Doc
+ Improve this Doc
- View Source
-
-
- Port
- Port number.
-
-
- Declaration
-
- public int Port { get; set; }
-
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- Int32
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
+ View Source
-
- Timeout
- Health probe timeout, after which the targeted endpoint is considered unhealthy.
+
+ Passive
+ Passive health check options.
Declaration
- public TimeSpan Timeout { get; set; }
+ public PassiveHealthCheckOptions Passive { get; set; }
Property Value
@@ -263,7 +170,7 @@ Property Value
- TimeSpan
+ PassiveHealthCheckOptions
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
similarity index 61%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
index a872f56ff..70720952d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
- Class ClusterPartitioningData
+ Class PassiveHealthCheckOptions
-
@@ -68,18 +68,18 @@
-
+
- Class ClusterPartitioningData
+ Class PassiveHealthCheckOptions
- Cluster partitioning configures which endpoints in a cluster are eligible to process each request.
+ Passive health check options.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ClusterPartitioningData
+ public sealed class PassiveHealthCheckOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitionCount
- Number of partitions.
+
+ Enabled
+ Whether passive health checks are enabled.
Declaration
- public int PartitionCount { get; set; }
+ public bool Enabled { get; set; }
Property Value
@@ -139,26 +139,26 @@ Property Value
- Int32
+ Boolean
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitioningAlgorithm
- E.g. "SHA256".
+
+ Policy
+ Passive health check policy.
Declaration
- public string PartitioningAlgorithm { get; set; }
+ public string Policy { get; set; }
Property Value
@@ -177,20 +177,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- PartitionKeyExtractor
- Describes how to compute the partitioning key from an incoming request.
-E.g. Header('x-ms-organization-id')
.
+
+ ReactivationPeriod
+ Destination reactivation period after which an unhealthy destination is considered healthy again.
Declaration
- public string PartitionKeyExtractor { get; set; }
+ public TimeSpan? ReactivationPeriod { get; set; }
Property Value
@@ -202,7 +201,7 @@ Property Value
- String
+ Nullable<TimeSpan>
@@ -215,10 +214,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
index 26d5ebd4f..2111a2ef7 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html
@@ -202,6 +202,36 @@
Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ PropagateActivityContext
+
+
+ Declaration
+
+ public bool? PropagateActivityContext { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ Nullable<Boolean>
+
+
+
+
|
Improve this Doc
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
similarity index 56%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
index 0d6e2d4f1..9225d9681 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html
@@ -5,10 +5,10 @@
- Class SessionAffinityData
+ Class ProxyHttpRequestOptions
-
@@ -68,18 +68,18 @@
-
+
- Class SessionAffinityData
+ Class ProxyHttpRequestOptions
- Session affinitity options.
+ Outgoing request configuration.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class SessionAffinityData
+ public sealed class ProxyHttpRequestOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
- Indicates whether session affinity is enabled.
+
+ RequestTimeout
+ Timeout for the outgoing request.
+Default is 100 seconds.
Declaration
- public bool Enabled { get; set; }
+ public TimeSpan? RequestTimeout { get; set; }
Property Value
@@ -139,26 +140,27 @@ Property Value
- Boolean
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- FailurePolicy
- Strategy handling missing destination for an affinitized request.
+
+ Version
+ HTTP version for the outgoing request.
+Default is HTTP/2.
Declaration
- public string FailurePolicy { get; set; }
+ public Version Version { get; set; }
Property Value
@@ -170,26 +172,28 @@ Property Value
- String
+ Version
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Session affinity mode which is implemented by one of providers.
+
+ VersionPolicy
+ Version policy for the outgoing request.
+Defines whether to upgrade or downgrade HTTP version if possible.
+Default is RequestVersionOrLower
.
Declaration
- public string Mode { get; set; }
+ public HttpVersionPolicy? VersionPolicy { get; set; }
Property Value
@@ -201,38 +205,7 @@ Property Value
- String
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- Settings
- Key-value pair collection holding extra settings specific to different affinity modes.
-
-
- Declaration
-
- public IDictionary<string, string> Settings { get; set; }
-
- Property Value
-
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ The actual destination that the request was proxied to.
+
+
+ Declaration
+
+ DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
@@ -157,7 +188,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
similarity index 57%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
index 3dcf03908..67f951318 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
@@ -5,10 +5,10 @@
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
-
@@ -68,18 +68,17 @@
-
+
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
- Root of IConfiguration-first configuration model.
-
+
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Middleware
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ConfigurationData
+ public class PassiveHealthCheckMiddleware
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Clusters
- Clusters.
-
+
+ PassiveHealthCheckMiddleware(RequestDelegate, IEnumerable<IPassiveHealthCheckPolicy>)
+
Declaration
- public Dictionary<string, ClusterData> Clusters { get; }
+ public PassiveHealthCheckMiddleware(RequestDelegate next, IEnumerable<IPassiveHealthCheckPolicy> policies)
- Property Value
+ Parameters
Type
+ Name
Description
- Dictionary<String, ClusterData>
+ RequestDelegate
+ next
+
+
+
+ IEnumerable<IPassiveHealthCheckPolicy>
+ policies
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Routes
- Routes.
-
+
+ Invoke(HttpContext)
+
Declaration
- public List<ProxyRouteData> Routes { get; }
+ public Task Invoke(HttpContext context)
- Property Value
+ Parameters
+
+
+
+ Type
+ Name
+ Description
+
+
+
+
+ HttpContext
+ context
+
+
+
+
+ Returns
@@ -170,7 +193,7 @@ Property Value
- List<ProxyRouteData>
+ Task
@@ -183,10 +206,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
index 44b187443..e9d9a08f6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
@@ -179,6 +179,37 @@
Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ Actual destination chosen as the target that received the current request.
+
+
+ Declaration
+
+ public DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
Implements
IReverseProxyFeature
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
index e060a220c..ec46c2b89 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
@@ -77,6 +77,8 @@
Classes
+ PassiveHealthCheckMiddleware
+
ReverseProxyFeature
Store current ClusterConfig and Tracks proxy cluster destinations that are available to handle the current request.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
index 72f3c2482..ae010473c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
-
@@ -68,12 +68,12 @@
-
+
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
- Active health probing options for a cluster.
+ Active health check options for a cluster.
@@ -99,30 +99,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterHealthCheckOptions
+ public struct ClusterActiveHealthCheckOptions
- Remarks
- Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
-Each "feature" can have its own struct.
-
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterHealthCheckOptions(Boolean, TimeSpan, TimeSpan, Int32, String)
+
+ ClusterActiveHealthCheckOptions(Boolean, Nullable<TimeSpan>, Nullable<TimeSpan>, String, String)
Declaration
- public ClusterHealthCheckOptions(bool enabled, TimeSpan interval, TimeSpan timeout, int port, string path)
+ public ClusterActiveHealthCheckOptions(bool enabled, TimeSpan? interval, TimeSpan? timeout, string policy, string path)
Parameters
@@ -140,18 +136,18 @@ Parameters
- TimeSpan
+ Nullable<TimeSpan>
interval
- TimeSpan
+ Nullable<TimeSpan>
timeout
- Int32
- port
+ String
+ policy
@@ -165,14 +161,14 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Interval
- Interval between health probes.
+
+ Interval
+ Health probe interval.
Declaration
- public TimeSpan Interval { get; }
+ public TimeSpan? Interval { get; }
Property Value
@@ -220,21 +216,21 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Port
- Port number.
+
+ Policy
+ Active health check policy.
Declaration
- public int Port { get; }
+ public string Policy { get; }
Property Value
@@ -282,26 +278,26 @@ Property Value
- Int32
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Timeout
- Health probe timeout, after which the targeted endpoint is considered unhealthy.
+
+ Timeout
+ Health probe timeout, after which a destination is considered unhealthy.
Declaration
- public TimeSpan Timeout { get; }
+ public TimeSpan? Timeout { get; }
Property Value
@@ -313,7 +309,7 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
@@ -326,10 +322,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
index 288f0431a..16383f7ed 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html
@@ -116,24 +116,24 @@
Syntax
Remarks
All members must remain immutable to avoid thread safety issues.
Instead, instances of ClusterConfig are replaced
-in ther entirety when values need to change.
+in their entirety when values need to change.
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
- ClusterConfig(Cluster, ClusterConfig.ClusterHealthCheckOptions, ClusterConfig.ClusterLoadBalancingOptions, ClusterConfig.ClusterSessionAffinityOptions, HttpMessageInvoker, ClusterConfig.ClusterProxyHttpClientOptions, IReadOnlyDictionary<String, String>)
+ ClusterConfig(Cluster, ClusterHealthCheckOptions, ClusterLoadBalancingOptions, ClusterSessionAffinityOptions, HttpMessageInvoker, ClusterProxyHttpClientOptions, ClusterProxyHttpRequestOptions, IReadOnlyDictionary<String, String>)
Declaration
- public ClusterConfig(Cluster cluster, ClusterConfig.ClusterHealthCheckOptions healthCheckOptions, ClusterConfig.ClusterLoadBalancingOptions loadBalancingOptions, ClusterConfig.ClusterSessionAffinityOptions sessionAffinityOptions, HttpMessageInvoker httpClient, ClusterConfig.ClusterProxyHttpClientOptions httpClientOptions, IReadOnlyDictionary<string, string> metadata)
+ public ClusterConfig(Cluster cluster, ClusterHealthCheckOptions healthCheckOptions, ClusterLoadBalancingOptions loadBalancingOptions, ClusterSessionAffinityOptions sessionAffinityOptions, HttpMessageInvoker httpClient, ClusterProxyHttpClientOptions httpClientOptions, ClusterProxyHttpRequestOptions httpRequestOptions, IReadOnlyDictionary<string, string> metadata)
Parameters
@@ -151,17 +151,17 @@ Parameters
- ClusterConfig.ClusterHealthCheckOptions
+ ClusterHealthCheckOptions
healthCheckOptions
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
loadBalancingOptions
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
sessionAffinityOptions
@@ -171,10 +171,15 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
httpClientOptions
+
+ ClusterProxyHttpRequestOptions
+ httpRequestOptions
+
+
IReadOnlyDictionary<String, String>
metadata
@@ -189,7 +194,7 @@ Properties
Improve this Doc
- View Source
+ View Source
HealthCheckOptions
@@ -197,7 +202,7 @@
Declaration
- public ClusterConfig.ClusterHealthCheckOptions HealthCheckOptions { get; }
+ public ClusterHealthCheckOptions HealthCheckOptions { get; }
Property Value
@@ -209,7 +214,7 @@ Property Value
- ClusterConfig.ClusterHealthCheckOptions
+ ClusterHealthCheckOptions
@@ -250,7 +255,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
HttpClientOptions
@@ -258,7 +263,7 @@
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions HttpClientOptions { get; }
+ public ClusterProxyHttpClientOptions HttpClientOptions { get; }
Property Value
@@ -270,7 +275,37 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
+
+
+
+
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ HttpRequestOptions
+
+
+ Declaration
+
+ public ClusterProxyHttpRequestOptions HttpRequestOptions { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ ClusterProxyHttpRequestOptions
@@ -280,7 +315,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
LoadBalancingOptions
@@ -288,7 +323,7 @@
Declaration
- public ClusterConfig.ClusterLoadBalancingOptions LoadBalancingOptions { get; }
+ public ClusterLoadBalancingOptions LoadBalancingOptions { get; }
Property Value
@@ -300,7 +335,7 @@ Property Value
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
@@ -341,7 +376,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
SessionAffinityOptions
@@ -349,7 +384,7 @@
Declaration
- public ClusterConfig.ClusterSessionAffinityOptions SessionAffinityOptions { get; }
+ public ClusterSessionAffinityOptions SessionAffinityOptions { get; }
Property Value
@@ -361,7 +396,7 @@ Property Value
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
@@ -377,7 +412,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
similarity index 56%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
index f8a7b5cfe..db49bcd48 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html
@@ -5,10 +5,10 @@
- Class MonotonicTimer
+ Class ClusterDynamicState
-
@@ -68,23 +68,17 @@
-
+
- Class MonotonicTimer
+ Class ClusterDynamicState
- Provides a way to measure time in a monotonic fashion, immune to any system clock changes.
-The time is measured from the moment the class is instantiated.
-
+
-
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class MonotonicTimer : IMonotonicTimer
+ public sealed class ClusterDynamicState
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MonotonicTimer()
- Initializes a new instance of the MonotonicTimer class.
-
+
+ ClusterDynamicState(IReadOnlyList<DestinationInfo>, IReadOnlyList<DestinationInfo>)
+
Declaration
- public MonotonicTimer()
+ public ClusterDynamicState(IReadOnlyList<DestinationInfo> allDestinations, IReadOnlyList<DestinationInfo> healthyDestinations)
- Properties
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- CurrentTime
- Gets the current time (elapsed, relative to the creation of this timer).
-
-
- Declaration
-
- public TimeSpan CurrentTime { get; }
-
- Property Value
+ Parameters
Type
+ Name
Description
- TimeSpan
+ IReadOnlyList<DestinationInfo>
+ allDestinations
+
+
+
+ IReadOnlyList<DestinationInfo>
+ healthyDestinations
- Methods
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DelayUntil(TimeSpan, CancellationToken)
- Creates a task that completes when CurrentTime >= expiryTime.
-
+
+ AllDestinations
+
Declaration
- public Task DelayUntil(TimeSpan expiryTime, CancellationToken cancellationToken)
+ public IReadOnlyList<DestinationInfo> AllDestinations { get; }
- Parameters
+ Property Value
Type
- Name
Description
- TimeSpan
- expiryTime
- Time at which the returned task will be completed.
-
-
-
- CancellationToken
- cancellationToken
+ IReadOnlyList<DestinationInfo>
- Returns
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ HealthyDestinations
+
+
+ Declaration
+
+ public IReadOnlyList<DestinationInfo> HealthyDestinations { get; }
+
+ Property Value
@@ -218,20 +206,11 @@ Returns
- Task
- A task which completes at expiryTime
.
-
+ IReadOnlyList<DestinationInfo>
+
- Implements
-
- IMonotonicTimer
-
- Extension Methods
-
@@ -240,10 +219,10 @@ Extension Methods
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
index 8d8733377..d5b6fb1d4 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class RouteHeaderData
+ Struct ClusterHealthCheckOptions
-
@@ -68,101 +68,101 @@
-
+
- Class RouteHeaderData
+ Struct ClusterHealthCheckOptions
- Describes the matching criteria for a route.
+ All health check options for a cluster.
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class RouteHeaderData
+ public struct ClusterHealthCheckOptions
- Properties
+ Remarks
+ Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
+Each "feature" can have its own struct.
+
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- IsCaseSensitive
- Specifies whether header value comparisons should ignore case.
-When true
, Ordinal is used.
-When false
, OrdinalIgnoreCase is used.
-Defaults to false
.
-
+
+ ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions, ClusterActiveHealthCheckOptions)
+
Declaration
- public bool IsCaseSensitive { get; set; }
+ public ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions passive, ClusterActiveHealthCheckOptions active)
- Property Value
+ Parameters
Type
+ Name
Description
- Boolean
+ ClusterPassiveHealthCheckOptions
+ passive
+
+
+
+ ClusterActiveHealthCheckOptions
+ active
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Specifies how header values should be compared (e.g. exact matches Vs. by prefix).
-Defaults to ExactHeader.
+
+ Active
+ Active health check options.
Declaration
- public HeaderMatchMode Mode { get; set; }
+ public ClusterActiveHealthCheckOptions Active { get; }
Property Value
@@ -174,26 +174,26 @@ Property Value
- HeaderMatchMode
+ ClusterActiveHealthCheckOptions
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Name
- Name of the header to look for.
+
+ Enabled
+ Whether at least one type of health check is enabled.
Declaration
- public string Name { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -205,27 +205,26 @@ Property Value
- String
+ Boolean
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Values
- A collection of acceptable header values used during routing. Only one value must match.
-The list must not be empty unless using Exists.
+
+ Passive
+ Passive health check options.
Declaration
- public IReadOnlyList<string> Values { get; set; }
+ public ClusterPassiveHealthCheckOptions Passive { get; }
Property Value
@@ -237,7 +236,7 @@ Property Value
- IReadOnlyList<String>
+ ClusterPassiveHealthCheckOptions
@@ -250,10 +249,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
index 23441d835..0f539416a 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
@@ -5,10 +5,10 @@
-
Class ProxyMatchData
+ Class ClusterInfo
-
@@ -68,18 +68,18 @@
-
+
- Class ProxyMatchData
+ Class ClusterInfo
- Describes the matching criteria for a route.
+ Representation of a cluster for use at runtime.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ProxyMatchData
+ public sealed class ClusterInfo
+ Remarks
+ Note that while this class is immutable, specific members such as
+Config and DynamicState hold mutable references
+that can be updated atomically and which will always have latest information
+relevant to this cluster.
+All members are thread safe.
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Headers
- Only match requests that contain all of these headers.
-
+
+ ClusterId
+
Declaration
- public IReadOnlyList<RouteHeaderData> Headers { get; set; }
+ public string ClusterId { get; }
Property Value
@@ -139,26 +145,27 @@ Property Value
- IReadOnlyList<RouteHeaderData>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Hosts
- Only match requests with the given Host header.
+
+ Config
+ Encapsulates parts of a cluster that can change atomically
+in reaction to config changes.
Declaration
- public IReadOnlyList<string> Hosts { get; set; }
+ public ClusterConfig Config { get; }
Property Value
@@ -170,26 +177,27 @@ Property Value
- IReadOnlyList<String>
+ ClusterConfig
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Methods
- Only match requests that use these optional HTTP methods. E.g. GET, POST.
+
+ DynamicState
+ Encapsulates parts of a cluster that can change atomically
+in reaction to runtime state changes (e.g. dynamic endpoint discovery).
Declaration
- public IReadOnlyList<string> Methods { get; set; }
+ public ClusterDynamicState DynamicState { get; }
Property Value
@@ -201,42 +209,29 @@ Property Value
- IReadOnlyList<String>
+ ClusterDynamicState
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
- Only match requests with the given Path pattern.
+
+ UpdateDynamicState()
+ Recreates the DynamicState data.
Declaration
- public string Path { get; set; }
+ public void UpdateDynamicState()
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- String
-
-
-
-
@@ -245,10 +240,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
similarity index 73%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
index 0d27260ef..36210eb70 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
-
@@ -68,10 +68,10 @@
-
+
- Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
public struct ClusterLoadBalancingOptions
@@ -106,13 +106,13 @@ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterLoadBalancingOptions(LoadBalancingMode)
+
+ ClusterLoadBalancingOptions(LoadBalancingMode)
Declaration
@@ -140,13 +140,13 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+
+ Mode
Declaration
@@ -176,10 +176,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
index ad7b886cc..3b04f77bd 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
@@ -68,94 +68,102 @@
-
+
- Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
+ Passive health check options for a cluster.
+
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ProxyHttpClientData
+ public struct ClusterPassiveHealthCheckOptions
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClusterPassiveHealthCheckOptions(Boolean, String, Nullable<TimeSpan>)
Declaration
- public CertificateConfigData ClientCertificate { get; set; }
+ public ClusterPassiveHealthCheckOptions(bool enabled, string policy, TimeSpan? reactivationPeriod)
- Property Value
+ Parameters
Type
+ Name
Description
- CertificateConfigData
+ Boolean
+ enabled
+
+
+
+ String
+ policy
+
+
+
+ Nullable<TimeSpan>
+ reactivationPeriod
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
-
+
+ Enabled
+ Whether active health checks are enabled.
+
Declaration
- public bool DangerousAcceptAnyServerCertificate { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -174,18 +182,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
-
+
+ Policy
+ Passive health check policy.
+
Declaration
- public int? MaxConnectionsPerServer { get; set; }
+ public string Policy { get; }
Property Value
@@ -197,25 +206,26 @@ Property Value
- Nullable<Int32>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- SslProtocols
-
+
+ ReactivationPeriod
+ Destination reactivation period after which an unhealthy destination is considered healthy again.
+
Declaration
- public List<SslProtocols> SslProtocols { get; set; }
+ public TimeSpan? ReactivationPeriod { get; }
Property Value
@@ -227,7 +237,7 @@ Property Value
- List<SslProtocols>
+ Nullable<TimeSpan>
@@ -240,10 +250,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
index 0973321b0..dd4f416f9 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
-
@@ -68,16 +68,16 @@
-
+
- Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
Implements
-
+
Inherited Members
@@ -96,26 +96,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterProxyHttpClientOptions : IEquatable<ClusterConfig.ClusterProxyHttpClientOptions>
+ public struct ClusterProxyHttpClientOptions : IEquatable<ClusterProxyHttpClientOptions>
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>)
+
+ ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>, Nullable<Boolean>)
Declaration
- public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer)
+ public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer, bool? propagateActivityContext)
Parameters
@@ -147,19 +147,24 @@ Parameters
maxConnectionsPerServer
+
+ Nullable<Boolean>
+ propagateActivityContext
+
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClientCertificate
Declaration
@@ -183,13 +188,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
+
+ DangerousAcceptAnyServerCertificate
Declaration
@@ -213,13 +218,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
+
+ MaxConnectionsPerServer
Declaration
@@ -243,13 +248,43 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
+
+
+ View Source
+
+
+ PropagateActivityContext
+
+
+ Declaration
+
+ public bool? PropagateActivityContext { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ Nullable<Boolean>
+
+
+
+
+
+ |
+ Improve this Doc
- View Source
+ View Source
-
- SslProtocols
+
+ SslProtocols
Declaration
@@ -275,18 +310,18 @@ Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equals(ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Equals(ClusterProxyHttpClientOptions)
Declaration
- public bool Equals(ClusterConfig.ClusterProxyHttpClientOptions other)
+ public bool Equals(ClusterProxyHttpClientOptions other)
Parameters
@@ -299,7 +334,7 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
other
@@ -322,13 +357,13 @@ Returns
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equals(Object)
+
+ Equals(Object)
Declaration
@@ -371,13 +406,13 @@ Overrides
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- GetHashCode()
+
+ GetHashCode()
Declaration
@@ -405,18 +440,18 @@ Operators
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Equality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Equality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
- public static bool operator ==(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator ==(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
@@ -429,12 +464,12 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
left
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
right
@@ -457,18 +492,18 @@ Returns
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Inequality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+
+ Inequality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
- public static bool operator !=(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator !=(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
@@ -481,12 +516,12 @@ Parameters
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
left
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
right
@@ -519,10 +554,10 @@ Implements
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html
new file mode 100644
index 000000000..0076c353d
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html
@@ -0,0 +1,328 @@
+
+
+
+
+
+
+
+
Struct ClusterProxyHttpRequestOptions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
similarity index 67%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
index 23be58cd6..d05ba71a1 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html
@@ -5,10 +5,10 @@
- Struct ClusterConfig.ClusterSessionAffinityOptions
+ Struct ClusterSessionAffinityOptions
-
@@ -68,10 +68,10 @@
-
+
- Struct ClusterConfig.ClusterSessionAffinityOptions
+ Struct ClusterSessionAffinityOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
public struct ClusterSessionAffinityOptions
@@ -106,13 +106,13 @@ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterSessionAffinityOptions(Boolean, String, String, IReadOnlyDictionary<String, String>)
+
+ ClusterSessionAffinityOptions(Boolean, String, String, IReadOnlyDictionary<String, String>)
Declaration
@@ -155,13 +155,13 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
+
+ Enabled
Declaration
@@ -185,13 +185,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- FailurePolicy
+
+ FailurePolicy
Declaration
@@ -215,13 +215,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+
+ Mode
Declaration
@@ -245,13 +245,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Settings
+
+ Settings
Declaration
@@ -281,10 +281,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
index de6870d63..4b674bebe 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html
@@ -122,18 +122,18 @@
Constructors
|
- Improve this Doc
+ Improve this Doc
View Source
- DestinationConfig(String)
+ DestinationConfig(String, String)
Declaration
- public DestinationConfig(string address)
+ public DestinationConfig(string address, string health)
Parameters
@@ -150,6 +150,11 @@ Parameters
address
+
+ String
+ health
+
+
Properties
@@ -159,11 +164,12 @@ Properties
Improve this Doc
- View Source
+ View Source
Address
-
+ Endpoint accepting proxied requests.
+
Declaration
@@ -184,6 +190,37 @@ Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ Health
+ Endpoint accepting active health check probes.
+
+
+ Declaration
+
+ public string Health { get; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ String
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
similarity index 72%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
index 24fb72cbb..2ad3574b6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html
@@ -5,10 +5,10 @@
- Class DestinationDynamicState
+ Class DestinationHealthState
-
@@ -68,17 +68,18 @@
-
+
- Class DestinationDynamicState
+ Class DestinationHealthState
-
+ Tracks destination passive and active health states.
+
Inherited Members
@@ -106,60 +107,58 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class DestinationDynamicState
+ public class DestinationHealthState
- Constructors
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DestinationDynamicState(DestinationHealth)
-
+
+ Active
+ Active health state.
+
Declaration
- public DestinationDynamicState(DestinationHealth health)
+ public DestinationHealth Active { get; set; }
- Parameters
+ Property Value
Type
- Name
Description
DestinationHealth
- health
- Properties
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Health
-
+
+ Passive
+ Passive health state.
+
Declaration
- public DestinationHealth Health { get; }
+ public DestinationHealth Passive { get; set; }
Property Value
@@ -184,10 +183,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
index 8f8b13da2..af61cfa21 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html
@@ -115,7 +115,7 @@
Properties
Improve this Doc
- View Source
+ View Source
Current
@@ -147,7 +147,7 @@ Methods
Improve this Doc
- View Source
+ View Source
Dispose()
@@ -162,7 +162,7 @@ Declaration
Improve this Doc
- View Source
+ View Source
MoveNext()
@@ -194,7 +194,7 @@ Explicit Interface Implementations
Improve this Doc
- View Source
+ View Source
IEnumerator.Current
@@ -224,7 +224,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IEnumerator.Reset()
@@ -255,7 +255,7 @@ Implements
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
index 3cccc1e39..f616d8b06 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html
@@ -120,8 +120,8 @@ Syntax
Remarks
Note that while this class is immutable, specific members such as
-Config and DynamicState hold mutable references
-that can be updated atomically and which will always have latest information
+Config and Health hold mutable references
+that can be updated and which will always have latest information
relevant to this endpoint.
All members are thread safe.
@@ -132,7 +132,7 @@ Constructors
Improve this Doc
- View Source
+ View Source
DestinationInfo(String)
@@ -166,7 +166,7 @@ Properties
Improve this Doc
- View Source
+ View Source
ConcurrentRequestCount
@@ -197,7 +197,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
Config
@@ -228,7 +228,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
DestinationId
@@ -255,19 +255,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DynamicState
- A snapshot of the current health state.
+
+ Health
+ Mutable health state for this destination.
Declaration
- public DestinationDynamicState DynamicState { get; }
+ public DestinationHealthState Health { get; }
Property Value
@@ -279,7 +279,7 @@ Property Value
- DestinationDynamicState
+ DestinationHealthState
@@ -291,7 +291,7 @@ Methods
Improve this Doc
- View Source
+ View Source
GetEnumerator()
@@ -323,7 +323,7 @@ Explicit Interface Implementations
Improve this Doc
- View Source
+ View Source
IEnumerable<DestinationInfo>.GetEnumerator()
@@ -353,7 +353,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IReadOnlyCollection<DestinationInfo>.Count
@@ -383,7 +383,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IReadOnlyList<DestinationInfo>.Item[Int32]
@@ -430,7 +430,7 @@ Returns
Improve this Doc
- View Source
+ View Source
IEnumerable.GetEnumerator()
@@ -479,7 +479,7 @@ Implements
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html
new file mode 100644
index 000000000..588573902
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+ Interface IClusterChangeListener
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
index 82d7cbf54..49e8ca061 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.html
@@ -81,30 +81,51 @@ ClusterDynamicState
+
+ ClusterInfo
+ Representation of a cluster for use at runtime.
DestinationConfig
Immutable representation of the portions of a destination
that only change in reaction to configuration changes
(e.g. address).
- DestinationDynamicState
-
+ DestinationHealthState
+ Tracks destination passive and active health states.
+
DestinationInfo
Representation of a cluster's destination for use at runtime.
Structs
- ClusterConfig.ClusterHealthCheckOptions
- Active health probing options for a cluster.
+ ClusterActiveHealthCheckOptions
+ Active health check options for a cluster.
+
+ ClusterHealthCheckOptions
+ All health check options for a cluster.
- ClusterConfig.ClusterLoadBalancingOptions
+ ClusterLoadBalancingOptions
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterPassiveHealthCheckOptions
+ Passive health check options for a cluster.
+
+ ClusterProxyHttpClientOptions
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterProxyHttpRequestOptions
+ Outgoing request configuration.
+Readonly copy of ProxyHttpRequestOptions.
+
+ ClusterSessionAffinityOptions
DestinationInfo.Enumerator
+ Interfaces
+
+ IClusterChangeListener
+ Listener for changes in the clusters.
+
Enums
DestinationHealth
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html
new file mode 100644
index 000000000..a072c1d3f
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html
@@ -0,0 +1,288 @@
+
+
+
+
+
+
+
+ Struct DestinationProbingResult
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
index c323b91ad..f52e7078b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html
@@ -5,10 +5,10 @@
- Interface IOperationContext
+ Interface IActiveHealthCheckMonitor
-
@@ -68,39 +68,37 @@
-
+
- Interface IOperationContext
+ Interface IActiveHealthCheckMonitor
- Provides contextual information for an ongoing operation.
-Operation contexts support nesting, and the current context
-can be obtained from Context.
+ Actively monitors destinations health.
- Namespace: Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace: Microsoft.ReverseProxy.Service.HealthChecks
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public interface IOperationContext
+ public interface IActiveHealthCheckMonitor
Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- SetProperty(String, String)
- Sets a property on the current operation context.
+
+ CheckHealthAsync(IEnumerable<ClusterInfo>)
+ Checks health of all clusters' destinations.
Declaration
- void SetProperty(string key, string value)
+ Task CheckHealthAsync(IEnumerable<ClusterInfo> clusters)
Parameters
@@ -113,15 +111,25 @@ Parameters
- String
- key
- Property key.
+ IEnumerable<ClusterInfo>
+ clusters
+ Clusters to check the health of their destinations.
+
+
+ Returns
+
+
+
+ Type
+ Description
+
+
+
- String
- value
- Property value.
+ Task
+ Task representing the health check process.
@@ -134,10 +142,10 @@ Parameters
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
similarity index 55%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
index 8d7619ba6..375d43331 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html
@@ -5,10 +5,10 @@
-
Interface IMonotonicTimer
+ Interface IActiveHealthCheckPolicy
-
@@ -68,37 +68,37 @@
-
+
- Interface IMonotonicTimer
+ Interface IActiveHealthCheckPolicy
- Abstraction for measuring time that is monotonically increasing.
+ Active health check evaulation policy.
- Namespace: Microsoft.ReverseProxy.Abstractions.Time
+ Namespace: Microsoft.ReverseProxy.Service.HealthChecks
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public interface IMonotonicTimer
+ public interface IActiveHealthCheckPolicy
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CurrentTime
- Gets the current time (elapsed, relative to the creation of this timer).
+
+ Name
+ Policy's name.
Declaration
- TimeSpan CurrentTime { get; }
+ string Name { get; }
Property Value
@@ -110,7 +110,7 @@ Property Value
- TimeSpan
+ String
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DelayUntil(TimeSpan, CancellationToken)
- Creates a task that completes when CurrentTime >= expiryTime.
+
+ ProbingCompleted(ClusterInfo, IReadOnlyList<DestinationProbingResult>)
+ Anaylizes results of active health probes sent to destinations and calculates their new health states.
Declaration
- Task DelayUntil(TimeSpan expiryTime, CancellationToken cancelationToken)
+ void ProbingCompleted(ClusterInfo cluster, IReadOnlyList<DestinationProbingResult> probingResults)
Parameters
@@ -144,39 +144,19 @@ Parameters
- TimeSpan
- expiryTime
- Time at which the returned task will be completed.
+ ClusterInfo
+ cluster
+ Cluster.
- CancellationToken
- cancelationToken
- Cancelation token for the created task.
+ IReadOnlyList<DestinationProbingResult>
+ probingResults
+ Destination probing results.
- Returns
-
-
-
- Type
- Description
-
-
-
-
- Task
- A task which completes at expiryTime
.
-
-
-
-
- Extension Methods
-
@@ -185,10 +165,10 @@ Extension Methods
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html
new file mode 100644
index 000000000..6b4055c6e
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
Interface IDestinationHealthUpdater
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html
new file mode 100644
index 000000000..801711fd4
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+ Interface IPassiveHealthCheckPolicy
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html
new file mode 100644
index 000000000..1a953492a
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html
@@ -0,0 +1,184 @@
+
+
+
+
+
+
+
+ Interface IProbingRequestFactory
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html
new file mode 100644
index 000000000..7219d9ccb
--- /dev/null
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html
@@ -0,0 +1,248 @@
+
+
+
+
+
+
+
+ Struct NewActiveDestinationHealth
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
similarity index 65%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
index a10bebcb3..ad2bc69d6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.HealthChecks.html
@@ -5,10 +5,10 @@
- Namespace Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace Microsoft.ReverseProxy.Service.HealthChecks
-
@@ -68,23 +68,38 @@
-
+
- Namespace Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace Microsoft.ReverseProxy.Service.HealthChecks
+ Structs
+
+ DestinationProbingResult
+ Result of a destination's active health probing.
+
+ NewActiveDestinationHealth
+ Stores a new active health state for the given destination.
+
Interfaces
- IOperationContext
- Provides contextual information for an ongoing operation.
-Operation contexts support nesting, and the current context
-can be obtained from Context.
+ IActiveHealthCheckMonitor
+ Actively monitors destinations health.
+
+ IActiveHealthCheckPolicy
+ Active health check evaulation policy.
+
+ IDestinationHealthUpdater
+ Updates destinations' health states when it's requested by a health check policy
+while taking into account not only the new evaluated value but also the overall current cluster's health state.
+
+ IPassiveHealthCheckPolicy
+ Passive health check evaluation policy.
- IOperationLogger<TCategoryName>
- Provides methods to log telemetry for the execution of chunks of
-synchronous or asynchronous operations.
+ IProbingRequestFactory
+ A factory for creating HttpRequestMessages for active health probes to be sent to destinations.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
index f1243cf12..e81da581b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html
@@ -185,14 +185,14 @@ Property Value
NewOptions
- New ClusterConfig.ClusterProxyHttpClientOptions instance
+
New ClusterProxyHttpClientOptions instance
specifying the settings for a new client.
CANNOT be null.
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions NewOptions { get; set; }
+ public ClusterProxyHttpClientOptions NewOptions { get; set; }
Property Value
@@ -204,7 +204,7 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
@@ -282,14 +282,14 @@ Property Value
OldOptions
- Old ClusterConfig.ClusterProxyHttpClientOptions instance
+
Old ClusterProxyHttpClientOptions instance
from which the OldClient was created.
Can be null if a client is getting constructed for the first time.
Declaration
- public ClusterConfig.ClusterProxyHttpClientOptions OldOptions { get; set; }
+ public ClusterProxyHttpClientOptions OldOptions { get; set; }
Property Value
@@ -301,7 +301,7 @@ Property Value
- ClusterConfig.ClusterProxyHttpClientOptions
+ ClusterProxyHttpClientOptions
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html
deleted file mode 100644
index d6ccdf1d7..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyErrorCode.html
+++ /dev/null
@@ -1,219 +0,0 @@
-
-
-
-
-
-
-
- Enum ProxyErrorCode
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html
deleted file mode 100644
index 99bf4a07f..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.Proxy.ProxyException.html
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
- Class ProxyException
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
index 55e76e93b..05c9a5654 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html
@@ -117,7 +117,7 @@ Methods
Improve this Doc
- View Source
+ View Source
AddTransformClientCert(ProxyRoute, String)
@@ -155,7 +155,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformForwarded(ProxyRoute, Boolean, Boolean, Boolean, Boolean, Boolean, String, String)
@@ -223,7 +223,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformHttpMethod(ProxyRoute, String, String)
@@ -266,7 +266,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathPrefix(ProxyRoute, PathString)
@@ -304,7 +304,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathRemovePrefix(ProxyRoute, PathString)
@@ -342,7 +342,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformPathRouteValues(ProxyRoute, PathString)
@@ -418,7 +418,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformQueryRouteParameter(ProxyRoute, String, String, Boolean)
@@ -466,7 +466,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformQueryValueParameter(ProxyRoute, String, String, Boolean)
@@ -514,7 +514,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformRemoveQueryParameter(ProxyRoute, String)
@@ -552,7 +552,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformRequestHeader(ProxyRoute, String, String, Boolean)
@@ -600,7 +600,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformResponseHeader(ProxyRoute, String, String, Boolean, Boolean)
@@ -653,7 +653,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformResponseTrailer(ProxyRoute, String, String, Boolean, Boolean)
@@ -706,7 +706,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformSuppressRequestHeaders(ProxyRoute)
@@ -739,7 +739,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformUseOriginalHostHeader(ProxyRoute)
@@ -772,7 +772,7 @@ Parameters
Improve this Doc
- View Source
+ View Source
AddTransformXForwarded(ProxyRoute, String, Boolean, Boolean, Boolean, Boolean, Boolean)
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
index f771b9120..0223a6e63 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html
@@ -165,8 +165,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
index ccc7b55b7..06141b6b3 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html
@@ -165,8 +165,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
index ca1b362c0..86f724da2 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
index 4332c7c27..fde639f6f 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html
@@ -163,8 +163,7 @@ Methods
Apply(RequestParametersTransformContext)
- Transforms any of the available fields before building the outgoing request.
-
+
Declaration
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
index 7571da0c7..3d4b0990c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html
@@ -123,8 +123,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -143,14 +142,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -165,8 +162,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
index ccdd86005..fd49f785d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html
@@ -182,8 +182,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -202,14 +201,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -224,8 +221,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
index 3207b666d..2922128e5 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html
@@ -162,8 +162,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -182,14 +181,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -204,8 +201,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
index e49c469fa..13e80725b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html
@@ -159,8 +159,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -201,8 +198,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
index 667eb882c..d0ba0bb6b 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html
@@ -159,8 +159,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -201,8 +198,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
index fc36ca210..715b5bb6c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
index 15e1961d5..8a67607ac 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
index b925785b1..e7e57a66e 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
@@ -167,8 +167,7 @@ Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Classes
- NullOperationContext
- Implementation of IOperationContext
-which doesn't do anything.
-
- NullOperationLogger<TCategoryName>
- Implementation of IOperationLogger<TCategoryName>
-which doesn't log anything.
-
- TextOperationLogger<TCategoryName>
- Default implementation of IOperationLogger<TCategoryName>
-which logs activity start / end events as Information messages.
+ ActivityPropagationHandler
+ ActivityPropagationHandler propagates the current Activity to the downstream service
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
index b7a6b75e4..9bef7e32d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
@@ -75,15 +75,6 @@
- Classes
-
- MonotonicTimer
- Provides a way to measure time in a monotonic fashion, immune to any system clock changes.
-The time is measured from the moment the class is instantiated.
-
- MonotonicTimerExtensions
- Extension methods for MonotonicTimer.
-
Interfaces
IRandomFactory
diff --git a/docs/docfx/_site/api/index.html b/docs/docfx/_site/api/index.html
index fe96fb5d2..b20b5cb8d 100644
--- a/docs/docfx/_site/api/index.html
+++ b/docs/docfx/_site/api/index.html
@@ -78,7 +78,7 @@ API Documentation for YARP
diff --git a/docs/docfx/_site/api/toc.html b/docs/docfx/_site/api/toc.html
index 2aafef250..3a56033d4 100644
--- a/docs/docfx/_site/api/toc.html
+++ b/docs/docfx/_site/api/toc.html
@@ -43,6 +43,12 @@
Microsoft.ReverseProxy.Abstractions
@@ -108,148 +135,125 @@
- Microsoft.ReverseProxy.Abstractions.Telemetry
+ Microsoft.ReverseProxy.Middleware
-
-
-
- Microsoft.ReverseProxy.Abstractions.Time
-
-
- Microsoft.ReverseProxy.Configuration.Contract
+ Microsoft.ReverseProxy.RuntimeModel
-
-
-
- Microsoft.ReverseProxy.Middleware
-
-
- Microsoft.ReverseProxy.RuntimeModel
+ Microsoft.ReverseProxy.Service
- Microsoft.ReverseProxy.Service
+ Microsoft.ReverseProxy.Service.HealthChecks
@@ -383,13 +387,7 @@
@@ -401,12 +399,6 @@
IRandomFactory
-
- MonotonicTimer
-
-
- MonotonicTimerExtensions
-
diff --git a/docs/docfx/_site/articles/authn-authz.html b/docs/docfx/_site/articles/authn-authz.html
index 3220ee80c..a3c0fcd03 100644
--- a/docs/docfx/_site/articles/authn-authz.html
+++ b/docs/docfx/_site/articles/authn-authz.html
@@ -151,7 +151,7 @@ Swapping authentication types
diff --git a/docs/docfx/_site/articles/configfiles.html b/docs/docfx/_site/articles/configfiles.html
index 9a891d1e6..4a095a63a 100644
--- a/docs/docfx/_site/articles/configfiles.html
+++ b/docs/docfx/_site/articles/configfiles.html
@@ -103,7 +103,7 @@
Loading Configuration
}
Configuration contract
-File-based configuration is defined by the types in Microsoft.ReverseProxy.Configuration.Contract namespace. Contract types have a simple POCO-like design aimed to a convenient serialization/deserialization, but not to an efficient usage in runtime. There is another runtime-friendly abstract model living in Microsoft.ReverseProxy.Abstractions namespace that is used by the most of reverse proxy logic. The default IProxyConfigProvider implementation converts Contracts to Abstractions on the applicaiton start and each time the configuration changes.
+File-based configuration is dynamically mapped to the types in Microsoft.ReverseProxy.Abstractions namespace by an IProxyConfigProvider implementation converts at application start and each time the configuration changes.
Configuration Structure
The configuration consists of a named section that you specified above via Configuration.GetSection("ReverseProxy")
, and contains subsections for routes and clusters.
Example:
@@ -137,11 +137,11 @@ Routes
ClusterId - Refers to the name of an entry in the clusters section.
Match containing either a Hosts array or a Path pattern string.
-Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
+Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
The proxy will apply the given matching criteria and policies, and then pass off the request to the specified cluster.
Clusters
The clusters section is an unordered collection of named clusters. A cluster primarily contains a collection of named destinations and their addresses, any of which is considered capable of handling requests for a given route. The proxy will process the request according to the route and cluster configuration in order to select a destination.
-For additional fields see Cluster.
+For additional fields see Cluster.
@@ -150,7 +150,7 @@ Clusters
diff --git a/docs/docfx/_site/articles/configproviders.html b/docs/docfx/_site/articles/configproviders.html
index e582b431b..468a4311c 100644
--- a/docs/docfx/_site/articles/configproviders.html
+++ b/docs/docfx/_site/articles/configproviders.html
@@ -224,7 +224,7 @@
Example
diff --git a/docs/docfx/_site/articles/cors.html b/docs/docfx/_site/articles/cors.html
index fb3ac4127..1cd10fc2a 100644
--- a/docs/docfx/_site/articles/cors.html
+++ b/docs/docfx/_site/articles/cors.html
@@ -139,7 +139,7 @@
Disable CORS
diff --git a/docs/docfx/_site/articles/dests-health-checks.html b/docs/docfx/_site/articles/dests-health-checks.html
new file mode 100644
index 000000000..3a97839a0
--- /dev/null
+++ b/docs/docfx/_site/articles/dests-health-checks.html
@@ -0,0 +1,395 @@
+
+
+
+
+
+
+
+
Destination health checks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docfx/_site/articles/direct-proxing.html b/docs/docfx/_site/articles/direct-proxing.html
deleted file mode 100644
index 2fc0a6564..000000000
--- a/docs/docfx/_site/articles/direct-proxing.html
+++ /dev/null
@@ -1,191 +0,0 @@
-
-
-
-
-
-
-
- Direct Proxying
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/articles/direct-proxying.html b/docs/docfx/_site/articles/direct-proxying.html
index e0ecc813e..73ff791ed 100644
--- a/docs/docfx/_site/articles/direct-proxying.html
+++ b/docs/docfx/_site/articles/direct-proxying.html
@@ -158,7 +158,7 @@ Error handling
diff --git a/docs/docfx/_site/articles/getting_started.html b/docs/docfx/_site/articles/getting_started.html
index 27e0abf43..be48d6bf2 100644
--- a/docs/docfx/_site/articles/getting_started.html
+++ b/docs/docfx/_site/articles/getting_started.html
@@ -70,7 +70,7 @@
Getting Started with YARP
YARP is designed as a library that provides the core proxy functionality which you can then customize by adding or replacing modules. YARP is currently provided as a NuGet package and code snippets. We plan on providing a project template and pre-built exe in the future.
-YARP 1.0.0 Preview 6 supports ASP.NET Core 3.1 and 5.0.0 RC 2 or later. You can download the .NET 5 Preview SDK from https://dotnet.microsoft.com/download/dotnet/5.0. 5.0 requires Visual Studio 2019 v16.8 Preview3 or newer.
+YARP 1.0.0 Preview 7 supports ASP.NET Core 3.1 and 5.0.0. You can download the .NET 5 SDK from https://dotnet.microsoft.com/download/dotnet/5.0. .NET 5.0 on Windows requires Visual Studio 2019 v16.8 or newer.
Create a new project
Start by creating an "Empty" ASP.NET Core application using the command line:
dotnet new web -n MyProxy
@@ -85,7 +85,7 @@ Update the project file
And then add:
<ItemGroup>
- <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.6.*" />
+ <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.7.*" />
</ItemGroup>
Update Startup
@@ -162,7 +162,7 @@ Configuration
diff --git a/docs/docfx/_site/articles/header-routing.html b/docs/docfx/_site/articles/header-routing.html
index fee7a0f49..b1643e878 100644
--- a/docs/docfx/_site/articles/header-routing.html
+++ b/docs/docfx/_site/articles/header-routing.html
@@ -220,7 +220,7 @@
Configuration
};
Contract
-RouteHeaderData defines the configuration contract, where RouteHeader defines the code contract. The only difference in these contracts is that RouteHeaderData defines an extra Value
property for convenience, Values
is preferred if specified.
+RouteHeader defines the code contract and is mapped from config.
Name
The header name to check for on the request. A non-empty value is required. This field is case-insensitive per the HTTP RFCs.
Values
@@ -300,7 +300,7 @@ Scenario 4 - Multiple Headers
diff --git a/docs/docfx/_site/articles/index.html b/docs/docfx/_site/articles/index.html
index e9125f334..219ebb2d0 100644
--- a/docs/docfx/_site/articles/index.html
+++ b/docs/docfx/_site/articles/index.html
@@ -77,7 +77,7 @@
Welcome to the docs
diff --git a/docs/docfx/_site/articles/proxyhttpclientconfig.html b/docs/docfx/_site/articles/proxyhttpclientconfig.html
index c4fac7d56..94264d150 100644
--- a/docs/docfx/_site/articles/proxyhttpclientconfig.html
+++ b/docs/docfx/_site/articles/proxyhttpclientconfig.html
@@ -72,9 +72,12 @@
Proxy HTTP Client Configuration
Introduced: preview5
Introduction
Each Cluster has a dedicated HttpMessageInvoker instance used to proxy requests to its Destinations. The configuration is defined per cluster. On YARP startup, all Clusters
get new HttpMessageInvoker
instances, however if later the Cluster
configuration gets changed the IProxyHttpClientFactory will re-run and decide if it should create a new HttpMessageInvoker
or keep using the existing one. The default IProxyHttpClientFactory
implementation creates a new HttpMessageInvoker
when there are changes to the ProxyHttpClientOptions.
+Properties of outgoing requests for a given cluster can be configured as well. They are defined in ProxyHttpRequestOptions.
The configuration is represented differently if you're using the IConfiguration model or the code-first model.
IConfiguration
-HTTP client configuration contract consists of ProxyHttpClientData and CertificateConfigData types defining the following configuration schema. These types are focused on defining serializable configuration. The code based HTTP client configuration model is described below in the "Code Configuration" section.
+These types are focused on defining serializable configuration. The code based configuration model is described below in the "Code Configuration" section.
+HttpClient
+HTTP client configuration is based on ProxyHttpClientOptions and represented by the following configuration schema.
"HttpClient": {
"SslProtocols": [ "<protocol-names>" ],
"MaxConnectionsPerServer": "<int>",
@@ -140,8 +143,22 @@ IConfiguration
}
+HttpRequest
+HTTP request configuration is based on ProxyHttpRequestOptions and represented by the following configuration schema.
+"HttpRequest": {
+ "RequestTimeout": "<timespan>",
+ "Version": "<string>",
+ "VersionPolicy": ["RequestVersionOrLower", "RequestVersionOrHigher", "RequestVersionExact"]
+}
+
+Configuration settings:
+
+- RequestTimeout - the timeout for the outgoing request sent by HttpMessageInvoker.SendAsync. If not specified, 100 seconds is used.
+- Version - outgoing request version. The supported values at the moment are
1.0
, 1.1
and 2
. Default value is 2.
+- VersionPolicy - defines how the final version is selected for the outgoing requests. This feature is available from .NET 5.0, see HttpRequestMessage.VersionPolicy. The default value is
RequestVersionOrLower
.
+
Configuration example
-The below example shows 2 samples of HTTP client configurations for cluster1
and cluster2
.
+The below example shows 2 samples of HTTP client and request configurations for cluster1
and cluster2
.
{
"Clusters": {
"cluster1": {
@@ -156,6 +173,9 @@ Configuration example
"MaxConnectionsPerServer": "10",
"DangerousAcceptAnyServerCertificate": "true"
},
+ "HttpRequest": {
+ "RequestTimeout": "00:00:30"
+ },
"Destinations": {
"cluster1/destination1": {
"Address": "https://localhost:10000/"
@@ -176,6 +196,10 @@ Configuration example
"Password": "1234abc"
}
},
+ "HttpRequest": {
+ "Version": "1.1",
+ "VersionPolicy": "RequestVersionExact"
+ },
"Destinations": {
"cluster2/destination1": {
"Address": "https://localhost:10001/"
@@ -186,7 +210,7 @@ Configuration example
}
Code Configuration
-HTTP client configuration abstraction constists of the only type ProxyHttpClientOptions defined as follows.
+HTTP client configuration abstraction consists of the only type ProxyHttpClientOptions defined as follows.
public sealed class ProxyHttpClientOptions
{
public List<SslProtocols> SslProtocols { get; set; }
@@ -198,7 +222,7 @@ Code Configuration
public int? MaxConnectionsPerServer { get; set; }
}
-Note that instead of defining certificate location as it was in CertificateConfigData model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
+Note that instead of defining certificate location as it was in the config model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
The following is an example of ProxyHttpClientOptions
using code based configuration. An instance of ProxyHttpClientOptions
is assigned to the Cluster.HttpClient property before passing the Cluster
array to LoadFromMemory
method.
public void ConfigureServices(IServiceCollection services)
{
@@ -235,6 +259,7 @@ Code Configuration
Custom IProxyHttpClientFactory
In case the direct control on a proxy HTTP client construction is necessary, the default IProxyHttpClientFactory can be replaced with a custom one. In example, that custom logic can use Cluster's metadata as an extra data source for HttpMessageInvoker configuration. However, it's still recommended for any custom factory to set the following HttpMessageInvoker
properties to the same values as the default factory does in order to preserve a correct reverse proxy behavior.
+Always return an HttpMessageInvoker instance rather than an HttpClient instance which derives from HttpMessageInvoker. HttpClient buffers responses by default which breaks streaming scenarios and increases memory usage and latency.
new SocketsHttpHandler
{
UseProxy = false,
@@ -295,7 +320,7 @@ Custom IProxyHttpClientFactory
diff --git a/docs/docfx/_site/articles/runtimes.html b/docs/docfx/_site/articles/runtimes.html
index 4b7aabc44..8b8bf8f9b 100644
--- a/docs/docfx/_site/articles/runtimes.html
+++ b/docs/docfx/_site/articles/runtimes.html
@@ -93,7 +93,7 @@
Related 5.0 Runtime Improvements
diff --git a/docs/docfx/_site/articles/session-affinity.html b/docs/docfx/_site/articles/session-affinity.html
index b25129a10..ae8348f1b 100644
--- a/docs/docfx/_site/articles/session-affinity.html
+++ b/docs/docfx/_site/articles/session-affinity.html
@@ -153,7 +153,7 @@
Request pipeline
diff --git a/docs/docfx/_site/articles/toc.html b/docs/docfx/_site/articles/toc.html
index 66281f436..c4cee7bcd 100644
--- a/docs/docfx/_site/articles/toc.html
+++ b/docs/docfx/_site/articles/toc.html
@@ -45,6 +45,9 @@
Transforms
+
+ Destinations health checks
+
diff --git a/docs/docfx/_site/articles/transforms.html b/docs/docfx/_site/articles/transforms.html
index b3d79b8b9..491011275 100644
--- a/docs/docfx/_site/articles/transforms.html
+++ b/docs/docfx/_site/articles/transforms.html
@@ -841,7 +841,7 @@ Extensibility
diff --git a/docs/docfx/_site/index.html b/docs/docfx/_site/index.html
index 93a842d54..b208cd896 100644
--- a/docs/docfx/_site/index.html
+++ b/docs/docfx/_site/index.html
@@ -75,7 +75,7 @@
YARP: A Reverse Proxy
diff --git a/docs/docfx/_site/manifest.json b/docs/docfx/_site/manifest.json
index 5fc682fb6..a48da5ff2 100644
--- a/docs/docfx/_site/manifest.json
+++ b/docs/docfx/_site/manifest.json
@@ -1,6 +1,6 @@
{
"homepages": [],
- "source_base_path": "C:/dev/git/reverse-proxy/docs/docfx",
+ "source_base_path": "D:/github/reverse-proxy/docs/docfx",
"xrefmap": "xrefmap.yml",
"files": [
{
@@ -9,7 +9,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.AspNetCore.Builder.ProxyMiddlewareAppBuilderExtensions.html",
- "hash": "0iH4vVLb84MKs5w3utZJ5g=="
+ "hash": "rUGpr/bI1IaI4lP5HIX0Qw=="
}
},
"is_incremental": false,
@@ -21,7 +21,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.AspNetCore.Builder.ReverseProxyIEndpointRouteBuilderExtensions.html",
- "hash": "v1YLblngiBZp5b4ExBJE9Q=="
+ "hash": "SBKjrIEOfODQEL4p7fx7FA=="
}
},
"is_incremental": false,
@@ -57,7 +57,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.Extensions.DependencyInjection.ReverseProxyServiceCollectionExtensions.html",
- "hash": "0AVUed1BI+0VvNXBdkeZQQ=="
+ "hash": "FXHzIqDjHOzuk6Ec6sr5uw=="
}
},
"is_incremental": false,
@@ -75,6 +75,30 @@
"is_incremental": false,
"version": ""
},
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckMonitorOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckMonitorOptions.html",
+ "hash": "EGLqp10Ys36/wzfGsKwu1A=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ActiveHealthCheckOptions.html",
+ "hash": "U78qXczZS6Oizb7XZiNofw=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.CircuitBreakerOptions.yml",
@@ -93,7 +117,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.Cluster.html",
- "hash": "NU75o+eHFfLYa+Uk4oTeKw=="
+ "hash": "ABzkQs6DI78rMz45eYa7Uw=="
}
},
"is_incremental": false,
@@ -171,13 +195,25 @@
"is_incremental": false,
"version": ""
},
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ConsecutiveFailuresHealthPolicyOptions.html",
+ "hash": "1pjy+ARdukqWA40+AIcDsA=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Destination.yml",
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.Destination.html",
- "hash": "AXyCoWspUQANH/wDtQe/vQ=="
+ "hash": "J4F8IjMUodKDReOwKwqrGw=="
}
},
"is_incremental": false,
@@ -197,11 +233,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html",
- "hash": "bdK/D00LBZGzpMpyJ666MA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html",
+ "hash": "qVjm5HBHdpBT9PctoPqNtA=="
}
},
"is_incremental": false,
@@ -209,11 +245,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.html",
- "hash": "2EoBAk7ZmYIpYerVlsZXag=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.PassivePolicy.html",
+ "hash": "X6USpT2Z75ne4n2BcGY1lw=="
}
},
"is_incremental": false,
@@ -221,11 +257,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.html",
- "hash": "l18gBxgYiYAejlxGF82YQQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.html",
+ "hash": "yiD+H/XrrwTNAA+7NFdi6w=="
}
},
"is_incremental": false,
@@ -233,11 +269,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html",
- "hash": "SnCmzT4dCJ5LSWbYNUdfYQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.HealthCheckOptions.html",
+ "hash": "ZEDiSmFxaBnEoq5ohfi51A=="
}
},
"is_incremental": false,
@@ -245,11 +281,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.html",
- "hash": "KezQiTAAkvceoGZ9Dhf8yg=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingMode.html",
+ "hash": "2EoBAk7ZmYIpYerVlsZXag=="
}
},
"is_incremental": false,
@@ -257,11 +293,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.html",
- "hash": "i3wJdGhr0O83T1eEB4E0tw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.LoadBalancingOptions.html",
+ "hash": "l18gBxgYiYAejlxGF82YQQ=="
}
},
"is_incremental": false,
@@ -269,11 +305,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.html",
- "hash": "OBa+3tjFya+s+NKvzWkozA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.PassiveHealthCheckOptions.html",
+ "hash": "SAp57Uauks7oB9X/HG3qPA=="
}
},
"is_incremental": false,
@@ -281,11 +317,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.html",
- "hash": "mQg9BwpUBy5Fq8R6BrjJdw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html",
+ "hash": "xvpANgQSFfDeAcX5jjkKfA=="
}
},
"is_incremental": false,
@@ -293,11 +329,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.html",
- "hash": "NyfXUn4Rc7ES1Qmb7ILWcQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyHttpRequestOptions.html",
+ "hash": "VU60ROZMYH4q4iddN4AfIQ=="
}
},
"is_incremental": false,
@@ -305,11 +341,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationContext.html",
- "hash": "X8u6oxtu8bRFxbx1TTzRng=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyMatch.html",
+ "hash": "KezQiTAAkvceoGZ9Dhf8yg=="
}
},
"is_incremental": false,
@@ -317,11 +353,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationLogger-1.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.IOperationLogger-1.html",
- "hash": "oCn3Md/1u6nIvvnvjA5c8g=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.ProxyRoute.html",
+ "hash": "i3wJdGhr0O83T1eEB4E0tw=="
}
},
"is_incremental": false,
@@ -329,11 +365,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Telemetry.html",
- "hash": "MjbJz2bGJEm2Vnwd64if2w=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.QuotaOptions.html",
+ "hash": "OBa+3tjFya+s+NKvzWkozA=="
}
},
"is_incremental": false,
@@ -341,11 +377,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.IMonotonicTimer.html",
- "hash": "94yrD0fxEeoj6lODwaVKxw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.RouteHeader.html",
+ "hash": "mQg9BwpUBy5Fq8R6BrjJdw=="
}
},
"is_incremental": false,
@@ -353,11 +389,23 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Abstractions.Time.html",
- "hash": "ya3KexAl6h59yDqBxHMCWw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.SessionAffinityOptions.html",
+ "hash": "NyfXUn4Rc7ES1Qmb7ILWcQ=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "ManagedReference",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.yml",
+ "output": {
+ ".html": {
+ "relative_path": "api/Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.html",
+ "hash": "CPlGWRQQCip16vs1QBy+Cg=="
}
},
"is_incremental": false,
@@ -369,7 +417,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Abstractions.html",
- "hash": "QWMdTjZAsVs86S6ibm1IiQ=="
+ "hash": "GYUtBGiz1oMnu3s0ka4s9w=="
}
},
"is_incremental": false,
@@ -377,11 +425,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html",
- "hash": "koopzZxA4VGQfXMDNsA+/A=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.html",
+ "hash": "rWw4JUsfy4CdSjxuVVS7Hg=="
}
},
"is_incremental": false,
@@ -389,11 +437,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html",
- "hash": "uyeE439kI/ZftO98+F6kdw=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html",
+ "hash": "tq04OuG067cV1dSXvrKbCw=="
}
},
"is_incremental": false,
@@ -401,11 +449,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html",
- "hash": "qWSx59EQy2Uuq8cE21zegA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html",
+ "hash": "N2kylMUvVUwNvVeHqyMP+Q=="
}
},
"is_incremental": false,
@@ -413,11 +461,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html",
- "hash": "W7zcEbBMm3T14PnL+MSiHA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Middleware.html",
+ "hash": "biiONfwN1HFhIQGsdoNOFg=="
}
},
"is_incremental": false,
@@ -425,11 +473,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html",
- "hash": "0A5kK99JUeqxvsKawl8oVA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html",
+ "hash": "JhWl4heL24/TKhvvJj7CGQ=="
}
},
"is_incremental": false,
@@ -437,11 +485,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html",
- "hash": "M+VTWnSOnt1j5Ereu1Fa0Q=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html",
+ "hash": "ELZGrJT2k+Air6HblOgNnw=="
}
},
"is_incremental": false,
@@ -449,11 +497,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html",
- "hash": "BFienEpLYvyxl8/PsVvBFg=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterDynamicState.html",
+ "hash": "c75TROJ2lZ4kl956MEqb/g=="
}
},
"is_incremental": false,
@@ -461,11 +509,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html",
- "hash": "1A8Sy4GYD93c/nBmrtXPhw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterHealthCheckOptions.html",
+ "hash": "OPy1SqgMnKA8ikJQeGzklQ=="
}
},
"is_incremental": false,
@@ -473,11 +521,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html",
- "hash": "mc0BphcCz0t7EPEtd1ky0A=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html",
+ "hash": "VM+z9xn53JLV7mIIU/hxvw=="
}
},
"is_incremental": false,
@@ -485,11 +533,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html",
- "hash": "JV9j0rqnEyUxvXFwrgLBRA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html",
+ "hash": "W6MnCN+VVDU0N52sx2fPiw=="
}
},
"is_incremental": false,
@@ -497,11 +545,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html",
- "hash": "wWepQK0q5UIfjdcFhYe3IA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html",
+ "hash": "4ILnC6H0XbZBydWaRWeJQw=="
}
},
"is_incremental": false,
@@ -509,11 +557,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html",
- "hash": "DcO5MSRpMKTJyLbC8vZ9PQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html",
+ "hash": "ISsagbk5oc9nZ3d9kHoMIQ=="
}
},
"is_incremental": false,
@@ -521,11 +569,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html",
- "hash": "7eVaISRL70u9/a1Fv2N95A=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpRequestOptions.html",
+ "hash": "5efHLZ6OBbP4G25UHO1VzQ=="
}
},
"is_incremental": false,
@@ -533,11 +581,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html",
- "hash": "HAjlngBJMTWUGkgDK4Ycuw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterSessionAffinityOptions.html",
+ "hash": "tlYQ10fEHl9iqF9sEHunxw=="
}
},
"is_incremental": false,
@@ -545,11 +593,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Configuration.Contract.html",
- "hash": "r6fS2jzVnQbtUlXN5o2Pbw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html",
+ "hash": "4iwP6XodBgOjTKbQLv3dxA=="
}
},
"is_incremental": false,
@@ -557,11 +605,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.IReverseProxyFeature.html",
- "hash": "VnX0oACiL8nnywaUrzoMSQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.html",
+ "hash": "vRnKwvub0/X51yK0t3Djug=="
}
},
"is_incremental": false,
@@ -569,11 +617,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html",
- "hash": "4PvNqp3BfGr6La7t+ufYyA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealthState.html",
+ "hash": "+fKuR3ME6P6J4iCpFAt+Lg=="
}
},
"is_incremental": false,
@@ -581,11 +629,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Middleware.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Middleware.html",
- "hash": "kpv2T9yUVd3JaIoExp3IQA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html",
+ "hash": "tqz9MrMjOziOb18D+QJzHw=="
}
},
"is_incremental": false,
@@ -593,11 +641,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html",
- "hash": "NboBIZrVVGV2k3Co2wf2QA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html",
+ "hash": "zsqz8M8yLfYuVzxmTlpmqw=="
}
},
"is_incremental": false,
@@ -605,11 +653,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html",
- "hash": "8K9oOqywzrQzvaojgITzhA=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.IClusterChangeListener.html",
+ "hash": "LEmQ0sXjbrkFBtVrNYwwuQ=="
}
},
"is_incremental": false,
@@ -617,11 +665,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html",
- "hash": "HqM5j69OfVRNFPXpLEK1uw=="
+ "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.html",
+ "hash": "PMxHMpnwCdk/gQNwePqtrA=="
}
},
"is_incremental": false,
@@ -629,11 +677,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterSessionAffinityOptions.html",
- "hash": "s+4/TPSxYlbvF/4JLziGig=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.DestinationProbingResult.html",
+ "hash": "yccxVuklp3je0afHgtyA/Q=="
}
},
"is_incremental": false,
@@ -641,11 +689,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.html",
- "hash": "MLeleAy44YXS+OSPVjZPlQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckMonitor.html",
+ "hash": "M904PmxOhQIdrJbcOySbOg=="
}
},
"is_incremental": false,
@@ -653,11 +701,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationConfig.html",
- "hash": "ku4YD/izFyqdWkIwwGUwMA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IActiveHealthCheckPolicy.html",
+ "hash": "NrxQMJkzDNlckgfqOAR5Aw=="
}
},
"is_incremental": false,
@@ -665,11 +713,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationDynamicState.html",
- "hash": "0ci+hjl1EYcy3+mzxWFiHQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IDestinationHealthUpdater.html",
+ "hash": "YTUJum05ztmiqzfYJIHyeg=="
}
},
"is_incremental": false,
@@ -677,11 +725,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationHealth.html",
- "hash": "vRnKwvub0/X51yK0t3Djug=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IPassiveHealthCheckPolicy.html",
+ "hash": "axB2wqKt9qFcpPzDnmIeYA=="
}
},
"is_incremental": false,
@@ -689,11 +737,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.Enumerator.html",
- "hash": "48ITkAHvUPojmlBk4MXMlQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.IProbingRequestFactory.html",
+ "hash": "9PlUo2E11ZZRXPGLemuyzQ=="
}
},
"is_incremental": false,
@@ -701,11 +749,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.DestinationInfo.html",
- "hash": "VC1e5gsqHRZot2fS77r5EQ=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.NewActiveDestinationHealth.html",
+ "hash": "MBIBhinTEVSpJtObJXr5nQ=="
}
},
"is_incremental": false,
@@ -713,11 +761,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.RuntimeModel.html",
- "hash": "yrXsGAR+YwprRXEKxyjO+w=="
+ "relative_path": "api/Microsoft.ReverseProxy.Service.HealthChecks.html",
+ "hash": "b73TtFCguLr9Ml1uEk8tkQ=="
}
},
"is_incremental": false,
@@ -825,7 +873,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.Proxy.Infrastructure.ProxyHttpClientContext.html",
- "hash": "7gz1FT6j2YND/p5oEnQoFQ=="
+ "hash": "O0gcMSD2pEKyDcNSB19SEg=="
}
},
"is_incremental": false,
@@ -885,7 +933,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.ProxyRouteTransformExtensions.html",
- "hash": "B4MCWM8SmnHoVqUPh8lb0w=="
+ "hash": "TEjTAzubQ8SVxoMVu+0T8g=="
}
},
"is_incremental": false,
@@ -897,7 +945,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathRouteValuesTransform.html",
- "hash": "Mzgbgj/npPtxEJ07GZdIeQ=="
+ "hash": "HNr5qvUA7++us7n5G+zd0w=="
}
},
"is_incremental": false,
@@ -921,7 +969,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.PathStringTransform.html",
- "hash": "1DPYDBO4/6kX1SOkWsJncw=="
+ "hash": "BrXnmwACLrvgzWi3w9oI7w=="
}
},
"is_incremental": false,
@@ -945,7 +993,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterRemoveTransform.html",
- "hash": "GC5eBGENM0hSlDparPdUfQ=="
+ "hash": "5S2TkRxsKoTm1x3ktON5fQ=="
}
},
"is_incremental": false,
@@ -969,7 +1017,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.QueryParameterTransform.html",
- "hash": "naQt3ohxsTT4SsF+5NNksg=="
+ "hash": "VWU5xEOEE86NpOYIRjN8Xg=="
}
},
"is_incremental": false,
@@ -1005,7 +1053,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderClientCertTransform.html",
- "hash": "Q4GMRvPhIikFEC1svX4vkQ=="
+ "hash": "oXcPeaXhwIotwJD43xz9MQ=="
}
},
"is_incremental": false,
@@ -1029,7 +1077,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderForwardedTransform.html",
- "hash": "LMHe8cO/wvOhgnLd1cE5+w=="
+ "hash": "wRpEjFglVYMMcxiClN8doQ=="
}
},
"is_incremental": false,
@@ -1053,7 +1101,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderValueTransform.html",
- "hash": "KIwNdWIdOW029Bxm8ZUtOQ=="
+ "hash": "z1Lo33fRG+O5sFKKbhAdag=="
}
},
"is_incremental": false,
@@ -1065,7 +1113,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedForTransform.html",
- "hash": "2n2e2A0+8/S/C7gjSfn6eg=="
+ "hash": "k2kQhQ2qC1OOAH2ZMMXjiw=="
}
},
"is_incremental": false,
@@ -1077,7 +1125,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedHostTransform.html",
- "hash": "JqCeAZU6tVzhb2PAnWzCGA=="
+ "hash": "6BqzeozAeIWKJal4YxmrDg=="
}
},
"is_incremental": false,
@@ -1089,7 +1137,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html",
- "hash": "fPKd1P2N+8+efu4Q01GhlQ=="
+ "hash": "OHhRzS/XGqb2dj1J54QG2w=="
}
},
"is_incremental": false,
@@ -1101,7 +1149,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html",
- "hash": "mLowqwAd/473hMDzSD3GXA=="
+ "hash": "KSK/EMZveivW2lUDOqo38Q=="
}
},
"is_incremental": false,
@@ -1149,7 +1197,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html",
- "hash": "a2uEgTb0dGbHYdRyFK3tLQ=="
+ "hash": "QrCeFNWwYEWysVMJNw7EWQ=="
}
},
"is_incremental": false,
@@ -1209,7 +1257,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html",
- "hash": "Kx2zsOP0EjfjmHYG/RfZsQ=="
+ "hash": "khWuTYV5EOYg0pqbLKJ7xQ=="
}
},
"is_incremental": false,
@@ -1241,35 +1289,11 @@
},
{
"type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationContext.html",
- "hash": "7aMrnwlQJLGdBw4+GyeFrQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.yml",
+ "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.yml",
"output": {
".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html",
- "hash": "GvX8ZRJtpDIThtVk+R/pIw=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html",
- "hash": "oAk6Mv0QZ/NaoBIv0uXoIA=="
+ "relative_path": "api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html",
+ "hash": "r7kScMqp10d/pS9mrW+nug=="
}
},
"is_incremental": false,
@@ -1281,7 +1305,7 @@
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Telemetry.html",
- "hash": "DxRp6zT5NGItus5+gOzarg=="
+ "hash": "gdrtth6hoF+P7lr33XM6Jg=="
}
},
"is_incremental": false,
@@ -1299,37 +1323,13 @@
"is_incremental": false,
"version": ""
},
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimer.html",
- "hash": "7jFIIhGHZjmlK+pdc1uNNQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
- {
- "type": "ManagedReference",
- "source_relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.yml",
- "output": {
- ".html": {
- "relative_path": "api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html",
- "hash": "9wwBYTSt/WWhXSHclUtXVQ=="
- }
- },
- "is_incremental": false,
- "version": ""
- },
{
"type": "ManagedReference",
"source_relative_path": "api/Microsoft.ReverseProxy.Utilities.yml",
"output": {
".html": {
"relative_path": "api/Microsoft.ReverseProxy.Utilities.html",
- "hash": "D/Zd5OJPrCbKkHjLFITkmA=="
+ "hash": "J3UhWzw02tgQdWqpfcLu9g=="
}
},
"is_incremental": false,
@@ -1341,7 +1341,7 @@
"output": {
".html": {
"relative_path": "api/index.html",
- "hash": "3QtCNC01d92mykx1L1Fh0w=="
+ "hash": "/qlNhfKxQa2Ube8Z8+HXlw=="
}
},
"is_incremental": false,
@@ -1353,7 +1353,7 @@
"output": {
".html": {
"relative_path": "api/toc.html",
- "hash": "RO1cR93VZl5gdLGDYlAFRQ=="
+ "hash": "B4KnwTGzMMoBQDbmZkmhhg=="
}
},
"is_incremental": false,
@@ -1365,7 +1365,7 @@
"output": {
".html": {
"relative_path": "articles/authn-authz.html",
- "hash": "TQe80fBE4ABTvhDJarLA+Q=="
+ "hash": "3E7vQTCSFn7xpKAnps25vg=="
}
},
"is_incremental": false,
@@ -1377,7 +1377,7 @@
"output": {
".html": {
"relative_path": "articles/configfiles.html",
- "hash": "QwrVp0hhnV6aLB3AIcaq5A=="
+ "hash": "okBpFc21sfk9g0kIdWFC6Q=="
}
},
"is_incremental": false,
@@ -1389,7 +1389,7 @@
"output": {
".html": {
"relative_path": "articles/configproviders.html",
- "hash": "uXw/udLmJB2q804DroPGQA=="
+ "hash": "Nx9NBlMZEIAKEeOu02xQIQ=="
}
},
"is_incremental": false,
@@ -1401,7 +1401,19 @@
"output": {
".html": {
"relative_path": "articles/cors.html",
- "hash": "bKgS9ApyepD+/ogqfiAQnw=="
+ "hash": "ETLDVVlj/XjzSl6OCleJ2Q=="
+ }
+ },
+ "is_incremental": false,
+ "version": ""
+ },
+ {
+ "type": "Conceptual",
+ "source_relative_path": "articles/dests-health-checks.md",
+ "output": {
+ ".html": {
+ "relative_path": "articles/dests-health-checks.html",
+ "hash": "9smCO8BuoKTtjamTPJ5hTQ=="
}
},
"is_incremental": false,
@@ -1413,7 +1425,7 @@
"output": {
".html": {
"relative_path": "articles/direct-proxying.html",
- "hash": "5TLVXNGiLgYC0/IRubsUEA=="
+ "hash": "l7mYYKRvlrLMGXZsSUf5pg=="
}
},
"is_incremental": false,
@@ -1425,7 +1437,7 @@
"output": {
".html": {
"relative_path": "articles/getting_started.html",
- "hash": "tih0RBGq4rNdVsK3okQMNA=="
+ "hash": "tESbJYps9XSY6qw34CcqiQ=="
}
},
"is_incremental": false,
@@ -1437,7 +1449,7 @@
"output": {
".html": {
"relative_path": "articles/header-routing.html",
- "hash": "G2iEtXBrmZ3yEUyiAGgmVQ=="
+ "hash": "VJLbcAdRX9WHxYcqZUgBig=="
}
},
"is_incremental": false,
@@ -1449,7 +1461,7 @@
"output": {
".html": {
"relative_path": "articles/index.html",
- "hash": "PhAK2BFOYumVGLAlOm+1PA=="
+ "hash": "TKptfQDc2u+Hwa+QLWmrTQ=="
}
},
"is_incremental": false,
@@ -1461,7 +1473,7 @@
"output": {
".html": {
"relative_path": "articles/proxyhttpclientconfig.html",
- "hash": "iwCw9ZcSwigBQolj0SYBjQ=="
+ "hash": "pevcd3DyYGy2DFOyuoeQbQ=="
}
},
"is_incremental": false,
@@ -1473,7 +1485,7 @@
"output": {
".html": {
"relative_path": "articles/runtimes.html",
- "hash": "WdXNL77+y2YDIjhRLfg2ag=="
+ "hash": "lFS17pHuAHG7+o3SQR3gYQ=="
}
},
"is_incremental": false,
@@ -1485,7 +1497,7 @@
"output": {
".html": {
"relative_path": "articles/session-affinity.html",
- "hash": "7/lKfyQl8ReexLitf8aT8w=="
+ "hash": "eCaQC+7MsaXsCi7TkUW0pA=="
}
},
"is_incremental": false,
@@ -1497,7 +1509,7 @@
"output": {
".html": {
"relative_path": "articles/toc.html",
- "hash": "QGxIPyiNO5apKiw6kJ/HRA=="
+ "hash": "VJTjSuBsiz+JTL4HowNdqQ=="
}
},
"is_incremental": false,
@@ -1509,7 +1521,7 @@
"output": {
".html": {
"relative_path": "articles/transforms.html",
- "hash": "32gpejncW6YbM+4sspxoGw=="
+ "hash": "Tkk+zTqyI83K8jiMOlGcWg=="
}
},
"is_incremental": false,
@@ -1521,7 +1533,7 @@
"output": {
".html": {
"relative_path": "index.html",
- "hash": "63TbMpCyXjykwrop2FsrqA=="
+ "hash": "JvBbUJROmTyIhX2ElO7b1g=="
}
},
"is_incremental": false,
@@ -1533,7 +1545,7 @@
"output": {
".html": {
"relative_path": "readme.html",
- "hash": "WvQ3lYCJcP4pJ+/7fjfnyA=="
+ "hash": "J/yMdpEFH+CdwLGxzHf8aA=="
}
},
"is_incremental": false,
@@ -1566,7 +1578,7 @@
"ConceptualDocumentProcessor": {
"can_incremental": false,
"incrementalPhase": "build",
- "total_file_count": 15,
+ "total_file_count": 16,
"skipped_file_count": 0
},
"ManagedReferenceDocumentProcessor": {
diff --git a/docs/docfx/_site/readme.html b/docs/docfx/_site/readme.html
index 74e1bed5a..98da74f9f 100644
--- a/docs/docfx/_site/readme.html
+++ b/docs/docfx/_site/readme.html
@@ -79,7 +79,7 @@
Publishing the docs
diff --git a/docs/docfx/_site/xrefmap.yml b/docs/docfx/_site/xrefmap.yml
index b81429549..d88bfacc3 100644
--- a/docs/docfx/_site/xrefmap.yml
+++ b/docs/docfx/_site/xrefmap.yml
@@ -928,6 +928,19 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.MaxConnectionsPerServer
nameWithType: ProxyHttpClientOptions.MaxConnectionsPerServer
+- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_PropagateActivityContext
+ commentId: P:Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ProxyHttpClientOptions.PropagateActivityContext
+- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext*
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_PropagateActivityContext_
+ commentId: Overload:Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ProxyHttpClientOptions.PropagateActivityContext
- uid: Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.SslProtocols
name: SslProtocols
href: api/Microsoft.ReverseProxy.Abstractions.ProxyHttpClientOptions.html#Microsoft_ReverseProxy_Abstractions_ProxyHttpClientOptions_SslProtocols
@@ -1353,985 +1366,6 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Abstractions.TransportFailureRateHealthPolicyOptions.MinimalTotalCountThreshold
nameWithType: TransportFailureRateHealthPolicyOptions.MinimalTotalCountThreshold
-- uid: Microsoft.ReverseProxy.Configuration.Contract
- name: Microsoft.ReverseProxy.Configuration.Contract
- href: api/Microsoft.ReverseProxy.Configuration.Contract.html
- commentId: N:Microsoft.ReverseProxy.Configuration.Contract
- fullName: Microsoft.ReverseProxy.Configuration.Contract
- nameWithType: Microsoft.ReverseProxy.Configuration.Contract
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- name: ActiveHealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData
- nameWithType: ActiveHealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- nameWithType: ActiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Enabled
- nameWithType: ActiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- name: Interval
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Interval
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- nameWithType: ActiveHealthCheckData.Interval
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval*
- name: Interval
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Interval_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Interval
- nameWithType: ActiveHealthCheckData.Interval
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- nameWithType: ActiveHealthCheckData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Path
- nameWithType: ActiveHealthCheckData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Policy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- nameWithType: ActiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy*
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Policy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Policy
- nameWithType: ActiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- name: Timeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Timeout
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- nameWithType: ActiveHealthCheckData.Timeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout*
- name: Timeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_ActiveHealthCheckData_Timeout_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ActiveHealthCheckData.Timeout
- nameWithType: ActiveHealthCheckData.Timeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- name: CertificateConfigData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData
- nameWithType: CertificateConfigData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- name: AllowInvalid
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_AllowInvalid
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- nameWithType: CertificateConfigData.AllowInvalid
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid*
- name: AllowInvalid
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_AllowInvalid_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.AllowInvalid
- nameWithType: CertificateConfigData.AllowInvalid
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- name: KeyPath
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_KeyPath
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- nameWithType: CertificateConfigData.KeyPath
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath*
- name: KeyPath
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_KeyPath_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.KeyPath
- nameWithType: CertificateConfigData.KeyPath
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- name: Location
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Location
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- nameWithType: CertificateConfigData.Location
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location*
- name: Location
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Location_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Location
- nameWithType: CertificateConfigData.Location
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- name: Password
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Password
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- nameWithType: CertificateConfigData.Password
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password*
- name: Password
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Password_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Password
- nameWithType: CertificateConfigData.Password
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- nameWithType: CertificateConfigData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Path
- nameWithType: CertificateConfigData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- name: Store
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Store
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- nameWithType: CertificateConfigData.Store
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store*
- name: Store
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Store_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Store
- nameWithType: CertificateConfigData.Store
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- name: Subject
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Subject
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- nameWithType: CertificateConfigData.Subject
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject*
- name: Subject
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.html#Microsoft_ReverseProxy_Configuration_Contract_CertificateConfigData_Subject_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CertificateConfigData.Subject
- nameWithType: CertificateConfigData.Subject
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- name: CircuitBreakerData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData
- nameWithType: CircuitBreakerData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- name: MaxConcurrentRequests
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRequests
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- nameWithType: CircuitBreakerData.MaxConcurrentRequests
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests*
- name: MaxConcurrentRequests
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRequests_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRequests
- nameWithType: CircuitBreakerData.MaxConcurrentRequests
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- name: MaxConcurrentRetries
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRetries
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- nameWithType: CircuitBreakerData.MaxConcurrentRetries
-- uid: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries*
- name: MaxConcurrentRetries
- href: api/Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.html#Microsoft_ReverseProxy_Configuration_Contract_CircuitBreakerData_MaxConcurrentRetries_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.CircuitBreakerData.MaxConcurrentRetries
- nameWithType: CircuitBreakerData.MaxConcurrentRetries
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- name: ClusterData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData
- nameWithType: ClusterData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- name: CircuitBreaker
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_CircuitBreaker
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- nameWithType: ClusterData.CircuitBreaker
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker*
- name: CircuitBreaker
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_CircuitBreaker_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.CircuitBreaker
- nameWithType: ClusterData.CircuitBreaker
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- name: Destinations
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Destinations
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- nameWithType: ClusterData.Destinations
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations*
- name: Destinations
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Destinations_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Destinations
- nameWithType: ClusterData.Destinations
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- name: HealthCheck
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HealthCheck
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- nameWithType: ClusterData.HealthCheck
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck*
- name: HealthCheck
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HealthCheck_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HealthCheck
- nameWithType: ClusterData.HealthCheck
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- name: HttpClient
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpClient
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- nameWithType: ClusterData.HttpClient
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient*
- name: HttpClient
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpClient_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpClient
- nameWithType: ClusterData.HttpClient
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- name: HttpRequest
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpRequest
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- nameWithType: ClusterData.HttpRequest
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest*
- name: HttpRequest
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_HttpRequest_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.HttpRequest
- nameWithType: ClusterData.HttpRequest
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- name: LoadBalancing
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_LoadBalancing
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- nameWithType: ClusterData.LoadBalancing
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing*
- name: LoadBalancing
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_LoadBalancing_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.LoadBalancing
- nameWithType: ClusterData.LoadBalancing
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- nameWithType: ClusterData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Metadata
- nameWithType: ClusterData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- name: Partitioning
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Partitioning
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- nameWithType: ClusterData.Partitioning
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning*
- name: Partitioning
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Partitioning_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Partitioning
- nameWithType: ClusterData.Partitioning
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- name: Quota
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Quota
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- nameWithType: ClusterData.Quota
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota*
- name: Quota
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_Quota_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.Quota
- nameWithType: ClusterData.Quota
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- name: SessionAffinity
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_SessionAffinity
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- nameWithType: ClusterData.SessionAffinity
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity*
- name: SessionAffinity
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterData_SessionAffinity_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterData.SessionAffinity
- nameWithType: ClusterData.SessionAffinity
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- name: ClusterPartitioningData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData
- nameWithType: ClusterPartitioningData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- name: PartitionCount
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionCount
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- nameWithType: ClusterPartitioningData.PartitionCount
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount*
- name: PartitionCount
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionCount_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionCount
- nameWithType: ClusterPartitioningData.PartitionCount
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- name: PartitioningAlgorithm
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitioningAlgorithm
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- nameWithType: ClusterPartitioningData.PartitioningAlgorithm
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm*
- name: PartitioningAlgorithm
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitioningAlgorithm_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitioningAlgorithm
- nameWithType: ClusterPartitioningData.PartitioningAlgorithm
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- name: PartitionKeyExtractor
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionKeyExtractor
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- nameWithType: ClusterPartitioningData.PartitionKeyExtractor
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor*
- name: PartitionKeyExtractor
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.html#Microsoft_ReverseProxy_Configuration_Contract_ClusterPartitioningData_PartitionKeyExtractor_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ClusterPartitioningData.PartitionKeyExtractor
- nameWithType: ClusterPartitioningData.PartitionKeyExtractor
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- name: ConfigurationData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData
- nameWithType: ConfigurationData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- name: Clusters
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Clusters
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- nameWithType: ConfigurationData.Clusters
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters*
- name: Clusters
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Clusters_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Clusters
- nameWithType: ConfigurationData.Clusters
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- name: Routes
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Routes
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- nameWithType: ConfigurationData.Routes
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes*
- name: Routes
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html#Microsoft_ReverseProxy_Configuration_Contract_ConfigurationData_Routes_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.Routes
- nameWithType: ConfigurationData.Routes
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- name: DestinationData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData
- nameWithType: DestinationData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- name: Address
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Address
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- nameWithType: DestinationData.Address
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address*
- name: Address
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Address_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Address
- nameWithType: DestinationData.Address
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- name: Health
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Health
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- nameWithType: DestinationData.Health
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health*
- name: Health
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Health_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Health
- nameWithType: DestinationData.Health
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- nameWithType: DestinationData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.DestinationData.html#Microsoft_ReverseProxy_Configuration_Contract_DestinationData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.DestinationData.Metadata
- nameWithType: DestinationData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- name: HealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData
- nameWithType: HealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- name: Active
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Active
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- nameWithType: HealthCheckData.Active
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active*
- name: Active
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Active_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Active
- nameWithType: HealthCheckData.Active
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- name: Passive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Passive
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- nameWithType: HealthCheckData.Passive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive*
- name: Passive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_HealthCheckData_Passive_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.HealthCheckData.Passive
- nameWithType: HealthCheckData.Passive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- name: LoadBalancingData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData
- nameWithType: LoadBalancingData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html#Microsoft_ReverseProxy_Configuration_Contract_LoadBalancingData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- nameWithType: LoadBalancingData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html#Microsoft_ReverseProxy_Configuration_Contract_LoadBalancingData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.Mode
- nameWithType: LoadBalancingData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- name: PassiveHealthCheckData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData
- nameWithType: PassiveHealthCheckData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- nameWithType: PassiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Enabled
- nameWithType: PassiveHealthCheckData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Policy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- nameWithType: PassiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy*
- name: Policy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_Policy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.Policy
- nameWithType: PassiveHealthCheckData.Policy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- name: ReactivationPeriod
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_ReactivationPeriod
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- nameWithType: PassiveHealthCheckData.ReactivationPeriod
-- uid: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod*
- name: ReactivationPeriod
- href: api/Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.html#Microsoft_ReverseProxy_Configuration_Contract_PassiveHealthCheckData_ReactivationPeriod_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.PassiveHealthCheckData.ReactivationPeriod
- nameWithType: PassiveHealthCheckData.ReactivationPeriod
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- name: ProxyHttpClientData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData
- nameWithType: ProxyHttpClientData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- name: ClientCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_ClientCertificate
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- nameWithType: ProxyHttpClientData.ClientCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate*
- name: ClientCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_ClientCertificate_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.ClientCertificate
- nameWithType: ProxyHttpClientData.ClientCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- name: DangerousAcceptAnyServerCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_DangerousAcceptAnyServerCertificate
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- nameWithType: ProxyHttpClientData.DangerousAcceptAnyServerCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate*
- name: DangerousAcceptAnyServerCertificate
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_DangerousAcceptAnyServerCertificate_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.DangerousAcceptAnyServerCertificate
- nameWithType: ProxyHttpClientData.DangerousAcceptAnyServerCertificate
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- name: MaxConnectionsPerServer
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_MaxConnectionsPerServer
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- nameWithType: ProxyHttpClientData.MaxConnectionsPerServer
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer*
- name: MaxConnectionsPerServer
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_MaxConnectionsPerServer_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.MaxConnectionsPerServer
- nameWithType: ProxyHttpClientData.MaxConnectionsPerServer
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- name: SslProtocols
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_SslProtocols
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- nameWithType: ProxyHttpClientData.SslProtocols
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols*
- name: SslProtocols
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpClientData_SslProtocols_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.SslProtocols
- nameWithType: ProxyHttpClientData.SslProtocols
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- name: ProxyHttpRequestData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData
- nameWithType: ProxyHttpRequestData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- name: RequestTimeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_RequestTimeout
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- nameWithType: ProxyHttpRequestData.RequestTimeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout*
- name: RequestTimeout
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_RequestTimeout_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.RequestTimeout
- nameWithType: ProxyHttpRequestData.RequestTimeout
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- name: Version
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_Version
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- nameWithType: ProxyHttpRequestData.Version
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version*
- name: Version
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_Version_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.Version
- nameWithType: ProxyHttpRequestData.Version
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- name: VersionPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_VersionPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- nameWithType: ProxyHttpRequestData.VersionPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy*
- name: VersionPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyHttpRequestData_VersionPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpRequestData.VersionPolicy
- nameWithType: ProxyHttpRequestData.VersionPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- name: ProxyMatchData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData
- nameWithType: ProxyMatchData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- name: Headers
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Headers
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- nameWithType: ProxyMatchData.Headers
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers*
- name: Headers
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Headers_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Headers
- nameWithType: ProxyMatchData.Headers
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- name: Hosts
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Hosts
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- nameWithType: ProxyMatchData.Hosts
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts*
- name: Hosts
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Hosts_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Hosts
- nameWithType: ProxyMatchData.Hosts
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- name: Methods
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Methods
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- nameWithType: ProxyMatchData.Methods
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods*
- name: Methods
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Methods_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Methods
- nameWithType: ProxyMatchData.Methods
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Path
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- nameWithType: ProxyMatchData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path*
- name: Path
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyMatchData_Path_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.Path
- nameWithType: ProxyMatchData.Path
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- name: ProxyRouteData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData
- nameWithType: ProxyRouteData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- name: AuthorizationPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_AuthorizationPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- nameWithType: ProxyRouteData.AuthorizationPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy*
- name: AuthorizationPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_AuthorizationPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.AuthorizationPolicy
- nameWithType: ProxyRouteData.AuthorizationPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- name: ClusterId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_ClusterId
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- nameWithType: ProxyRouteData.ClusterId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId*
- name: ClusterId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_ClusterId_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.ClusterId
- nameWithType: ProxyRouteData.ClusterId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- name: CorsPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_CorsPolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- nameWithType: ProxyRouteData.CorsPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy*
- name: CorsPolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_CorsPolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.CorsPolicy
- nameWithType: ProxyRouteData.CorsPolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- name: Match
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Match
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- nameWithType: ProxyRouteData.Match
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match*
- name: Match
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Match_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Match
- nameWithType: ProxyRouteData.Match
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Metadata
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- nameWithType: ProxyRouteData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata*
- name: Metadata
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Metadata_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Metadata
- nameWithType: ProxyRouteData.Metadata
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- name: Order
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Order
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- nameWithType: ProxyRouteData.Order
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order*
- name: Order
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Order_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Order
- nameWithType: ProxyRouteData.Order
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- name: RouteId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_RouteId
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- nameWithType: ProxyRouteData.RouteId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId*
- name: RouteId
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_RouteId_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.RouteId
- nameWithType: ProxyRouteData.RouteId
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- name: Transforms
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Transforms
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- nameWithType: ProxyRouteData.Transforms
-- uid: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms*
- name: Transforms
- href: api/Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.html#Microsoft_ReverseProxy_Configuration_Contract_ProxyRouteData_Transforms_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.ProxyRouteData.Transforms
- nameWithType: ProxyRouteData.Transforms
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- name: QuotaData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData
- nameWithType: QuotaData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- name: Average
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Average
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- nameWithType: QuotaData.Average
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average*
- name: Average
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Average_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Average
- nameWithType: QuotaData.Average
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- name: Burst
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Burst
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- nameWithType: QuotaData.Burst
-- uid: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst*
- name: Burst
- href: api/Microsoft.ReverseProxy.Configuration.Contract.QuotaData.html#Microsoft_ReverseProxy_Configuration_Contract_QuotaData_Burst_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.QuotaData.Burst
- nameWithType: QuotaData.Burst
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- name: RouteHeaderData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData
- nameWithType: RouteHeaderData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- name: IsCaseSensitive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_IsCaseSensitive
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- nameWithType: RouteHeaderData.IsCaseSensitive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive*
- name: IsCaseSensitive
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_IsCaseSensitive_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.IsCaseSensitive
- nameWithType: RouteHeaderData.IsCaseSensitive
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- nameWithType: RouteHeaderData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Mode
- nameWithType: RouteHeaderData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- name: Name
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Name
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- nameWithType: RouteHeaderData.Name
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name*
- name: Name
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Name_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Name
- nameWithType: RouteHeaderData.Name
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- name: Values
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Values
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- nameWithType: RouteHeaderData.Values
-- uid: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values*
- name: Values
- href: api/Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.html#Microsoft_ReverseProxy_Configuration_Contract_RouteHeaderData_Values_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.RouteHeaderData.Values
- nameWithType: RouteHeaderData.Values
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- name: SessionAffinityData
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html
- commentId: T:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData
- nameWithType: SessionAffinityData
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Enabled
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- nameWithType: SessionAffinityData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled*
- name: Enabled
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Enabled_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Enabled
- nameWithType: SessionAffinityData.Enabled
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- name: FailurePolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_FailurePolicy
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- nameWithType: SessionAffinityData.FailurePolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy*
- name: FailurePolicy
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_FailurePolicy_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.FailurePolicy
- nameWithType: SessionAffinityData.FailurePolicy
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Mode
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- nameWithType: SessionAffinityData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode*
- name: Mode
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Mode_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Mode
- nameWithType: SessionAffinityData.Mode
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- name: Settings
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Settings
- commentId: P:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- nameWithType: SessionAffinityData.Settings
-- uid: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings*
- name: Settings
- href: api/Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.html#Microsoft_ReverseProxy_Configuration_Contract_SessionAffinityData_Settings_
- commentId: Overload:Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- isSpec: "True"
- fullName: Microsoft.ReverseProxy.Configuration.Contract.SessionAffinityData.Settings
- nameWithType: SessionAffinityData.Settings
- uid: Microsoft.ReverseProxy.Middleware
name: Microsoft.ReverseProxy.Middleware
href: api/Microsoft.ReverseProxy.Middleware.html
@@ -2932,15 +1966,15 @@ references:
commentId: T:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions
fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions
nameWithType: ClusterProxyHttpClientOptions
-- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32})
- name: ClusterProxyHttpClientOptions(Nullable
, Boolean, X509Certificate2, Nullable)
- href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_System_Nullable_System_Security_Authentication_SslProtocols__System_Boolean_System_Security_Cryptography_X509Certificates_X509Certificate2_System_Nullable_System_Int32__
- commentId: M:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32})
- name.vb: ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32))
- fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable, System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable)
- fullName.vb: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable(Of System.Security.Authentication.SslProtocols), System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable(Of System.Int32))
- nameWithType: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable)
- nameWithType.vb: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32))
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32},System.Nullable{System.Boolean})
+ name: ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable, Nullable)
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_System_Nullable_System_Security_Authentication_SslProtocols__System_Boolean_System_Security_Cryptography_X509Certificates_X509Certificate2_System_Nullable_System_Int32__System_Nullable_System_Boolean__
+ commentId: M:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor(System.Nullable{System.Security.Authentication.SslProtocols},System.Boolean,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.Int32},System.Nullable{System.Boolean})
+ name.vb: ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32), Nullable(Of Boolean))
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable, System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable, System.Nullable)
+ fullName.vb: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(System.Nullable(Of System.Security.Authentication.SslProtocols), System.Boolean, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Nullable(Of System.Int32), System.Nullable(Of System.Boolean))
+ nameWithType: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable, Boolean, X509Certificate2, Nullable, Nullable)
+ nameWithType.vb: ClusterProxyHttpClientOptions.ClusterProxyHttpClientOptions(Nullable(Of SslProtocols), Boolean, X509Certificate2, Nullable(Of Int32), Nullable(Of Boolean))
- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.#ctor*
name: ClusterProxyHttpClientOptions
href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions__ctor_
@@ -3045,6 +2079,19 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.Inequality
nameWithType: ClusterProxyHttpClientOptions.Inequality
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_PropagateActivityContext
+ commentId: P:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ClusterProxyHttpClientOptions.PropagateActivityContext
+- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext*
+ name: PropagateActivityContext
+ href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_PropagateActivityContext_
+ commentId: Overload:Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.PropagateActivityContext
+ nameWithType: ClusterProxyHttpClientOptions.PropagateActivityContext
- uid: Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.SslProtocols
name: SslProtocols
href: api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html#Microsoft_ReverseProxy_RuntimeModel_ClusterProxyHttpClientOptions_SslProtocols
@@ -5502,6 +4549,44 @@ references:
isSpec: "True"
fullName: Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.Mode
nameWithType: ISessionAffinityProvider.Mode
+- uid: Microsoft.ReverseProxy.Telemetry
+ name: Microsoft.ReverseProxy.Telemetry
+ href: api/Microsoft.ReverseProxy.Telemetry.html
+ commentId: N:Microsoft.ReverseProxy.Telemetry
+ fullName: Microsoft.ReverseProxy.Telemetry
+ nameWithType: Microsoft.ReverseProxy.Telemetry
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ name: ActivityPropagationHandler
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
+ commentId: T:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler
+ nameWithType: ActivityPropagationHandler
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor(System.Net.Http.HttpMessageHandler)
+ name: ActivityPropagationHandler(HttpMessageHandler)
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler__ctor_System_Net_Http_HttpMessageHandler_
+ commentId: M:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor(System.Net.Http.HttpMessageHandler)
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.ActivityPropagationHandler(System.Net.Http.HttpMessageHandler)
+ nameWithType: ActivityPropagationHandler.ActivityPropagationHandler(HttpMessageHandler)
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor*
+ name: ActivityPropagationHandler
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler__ctor_
+ commentId: Overload:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.#ctor
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.ActivityPropagationHandler
+ nameWithType: ActivityPropagationHandler.ActivityPropagationHandler
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)
+ name: SendAsync(HttpRequestMessage, CancellationToken)
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler_SendAsync_System_Net_Http_HttpRequestMessage_System_Threading_CancellationToken_
+ commentId: M:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync(System.Net.Http.HttpRequestMessage, System.Threading.CancellationToken)
+ nameWithType: ActivityPropagationHandler.SendAsync(HttpRequestMessage, CancellationToken)
+- uid: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync*
+ name: SendAsync
+ href: api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html#Microsoft_ReverseProxy_Telemetry_ActivityPropagationHandler_SendAsync_
+ commentId: Overload:Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync
+ isSpec: "True"
+ fullName: Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.SendAsync
+ nameWithType: ActivityPropagationHandler.SendAsync
- uid: Microsoft.ReverseProxy.Utilities
name: Microsoft.ReverseProxy.Utilities
href: api/Microsoft.ReverseProxy.Utilities.html
Describes a destination of a cluster.
+Defines options for the consecutive failures active health check policy.
public sealed class DestinationData
+ public class ConsecutiveFailuresHealthPolicyOptions
Fields
| - Improve this Doc + Improve this Doc - View Source + View Source - -Address
-Address of this destination. E.g. https://127.0.0.1:123/abcd1234/
.
ThresholdMetadataName
+Name of the consecutive failure threshold metadata parameter. +It's the number of consecutive failure that needs to happen in order to mark a destination as unhealthy.
Declaration
public string Address { get; set; }
+ public static readonly string ThresholdMetadataName
Property Value
+Field Value
Properties +
| - Improve this Doc + Improve this Doc - View Source + View Source - -Metadata
-Arbitrary key-value pairs that further describe this destination.
+ +DefaultThreshold
+Default consecutive failures threshold that is applied if it's not set on a cluster's metadata.
Declaration
public IDictionary<string, string> Metadata { get; set; }
+ public long DefaultThreshold { get; set; }
Property Value
IDictionary<String, String> | +Int64 |
Health
+Endpoint accepting active health check probes. E.g. http://127.0.0.1:1234/
.
Declaration
+public string Health { get; set; }
+ Property Value
+Type | +Description | +
---|---|
String | ++ |
Metadata
Arbitrary key-value pairs that further describe this destination.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html similarity index 73% rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html index 0fed03a17..b9aa6389d 100644 --- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.LoadBalancingData.html +++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Abstractions.HealthCheckConstants.ActivePolicy.html @@ -5,10 +5,10 @@ -Class LoadBalancingData
+ Class HealthCheckConstants.ActivePolicy
- Load balancing options.
-
+
Load balancing options.
-Namespace: Microsoft.ReverseProxy.Configuration.Contract
+Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
-Syntax
+Syntax
public sealed class LoadBalancingData
+ public static class ActivePolicy
Properties
+ Fields
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+ ConsecutiveFailures
Declaration
- public string Mode { get; set; }
+ public static readonly string ConsecutiveFailures
- Property Value
+ Field Value
public string Mode { get; set; }
+ public static readonly string ConsecutiveFailures
Exception | +String |
Implements
-Implements
Class NullOperationContext
+ Class HealthCheckConstants
- Implementation of IOperationContext
-which doesn't do anything.
-
+
-
Implementation of IOperationContext -which doesn't do anything.
-Namespace: Microsoft.ReverseProxy.Telemetry
+Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
-Syntax
-public class NullOperationContext : IOperationContext
- Methods -
- - | - Improve this Doc - - - View Source - - -SetProperty(String, String)
-Sets a property on the current operation context.
-Declaration
+Syntax
public void SetProperty(string key, string value)
- Parameters
-Type | -Name | -Description | -
---|---|---|
String | -key | -Property key. - |
-
String | -value | -Property value. - |
-
Implements
-public static class HealthCheckConstants
Implements
Class HealthCheckOptions
-Active health check options.
+All health check options.
Properties
| - Improve this Doc + Improve this Doc - View Source - - -Enabled
-Whether health probes are enabled.
-Declaration
-public bool Enabled { get; set; }
- Property Value
-Type | -Description | -
---|---|
Boolean | -- |
Interval
-Health probe interval.
-Declaration
-public TimeSpan Interval { get; set; }
- Property Value
-Type | -Description | -
---|---|
TimeSpan | -- |
Path
-Http path.
+ +Active
+Active health check options.
Declaration
public string Path { get; set; }
+ public ActiveHealthCheckOptions Active { get; set; }
Property Value
String | +ActiveHealthCheckOptions |
Port
-Port number.
-Declaration
-public int Port { get; set; }
- Property Value
-Type | -Description | -
---|---|
Int32 | -- |
Timeout
-Health probe timeout, after which the targeted endpoint is considered unhealthy.
+ +Passive
+Passive health check options.
Declaration
public TimeSpan Timeout { get; set; }
+ public PassiveHealthCheckOptions Passive { get; set; }
Property Value
TimeSpan | +PassiveHealthCheckOptions |
Int32 | +Boolean |
PartitioningAlgorithm
-E.g. "SHA256".
+ +Policy
+Passive health check policy.
Declaration
public string PartitioningAlgorithm { get; set; }
+ public string Policy { get; set; }
Property Value
PartitionKeyExtractor
-Describes how to compute the partitioning key from an incoming request.
-E.g. Header('x-ms-organization-id')
.
ReactivationPeriod
+Destination reactivation period after which an unhealthy destination is considered healthy again.
Declaration
public string PartitionKeyExtractor { get; set; }
+ public TimeSpan? ReactivationPeriod { get; set; }
Property Value
String | +Nullable<TimeSpan> |
PropagateActivityContext
+ + +Declaration
+public bool? PropagateActivityContext { get; set; }
+ Property Value
+Type | +Description | +
---|---|
Nullable<Boolean> | ++ |
Class SessionAffinityData
+ Class ProxyHttpRequestOptions
- Session affinitity options.
+ Outgoing request configuration.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Abstractions
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class SessionAffinityData
+ public sealed class ProxyHttpRequestOptions
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
- Indicates whether session affinity is enabled.
+
+ RequestTimeout
+ Timeout for the outgoing request.
+Default is 100 seconds.
Declaration
- public bool Enabled { get; set; }
+ public TimeSpan? RequestTimeout { get; set; }
Property Value
@@ -139,26 +140,27 @@ Property Value
- Boolean
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- FailurePolicy
- Strategy handling missing destination for an affinitized request.
+
+ Version
+ HTTP version for the outgoing request.
+Default is HTTP/2.
Declaration
- public string FailurePolicy { get; set; }
+ public Version Version { get; set; }
Property Value
@@ -170,26 +172,28 @@ Property Value
- String
+ Version
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Session affinity mode which is implemented by one of providers.
+
+ VersionPolicy
+ Version policy for the outgoing request.
+Defines whether to upgrade or downgrade HTTP version if possible.
+Default is RequestVersionOrLower
.
Declaration
- public string Mode { get; set; }
+ public HttpVersionPolicy? VersionPolicy { get; set; }
Property Value
@@ -201,38 +205,7 @@ Property Value
- String
-
-
-
-
-
- |
- Improve this Doc
-
-
- View Source
-
-
- Settings
- Key-value pair collection holding extra settings specific to different affinity modes.
-
-
- Declaration
-
- public IDictionary<string, string> Settings { get; set; }
-
- Property Value
-
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ The actual destination that the request was proxied to.
+
+
+ Declaration
+
+ DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
@@ -157,7 +188,7 @@ Property Value
Improve this Doc
- View Source
+ View Source
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
similarity index 57%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
index 3dcf03908..67f951318 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ConfigurationData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.PassiveHealthCheckMiddleware.html
@@ -5,10 +5,10 @@
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
-
@@ -68,18 +68,17 @@
-
+
- Class ConfigurationData
+ Class PassiveHealthCheckMiddleware
- Root of IConfiguration-first configuration model.
-
+
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.Middleware
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ConfigurationData
+ public class PassiveHealthCheckMiddleware
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Clusters
- Clusters.
-
+
+ PassiveHealthCheckMiddleware(RequestDelegate, IEnumerable<IPassiveHealthCheckPolicy>)
+
Declaration
- public Dictionary<string, ClusterData> Clusters { get; }
+ public PassiveHealthCheckMiddleware(RequestDelegate next, IEnumerable<IPassiveHealthCheckPolicy> policies)
- Property Value
+ Parameters
Type
+ Name
Description
- Dictionary<String, ClusterData>
+ RequestDelegate
+ next
+
+
+
+ IEnumerable<IPassiveHealthCheckPolicy>
+ policies
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Routes
- Routes.
-
+
+ Invoke(HttpContext)
+
Declaration
- public List<ProxyRouteData> Routes { get; }
+ public Task Invoke(HttpContext context)
- Property Value
+ Parameters
+
+
+
+ Type
+ Name
+ Description
+
+
+
+
+ HttpContext
+ context
+
+
+
+
+ Returns
@@ -170,7 +193,7 @@ Property Value
- List<ProxyRouteData>
+ Task
@@ -183,10 +206,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
index 44b187443..e9d9a08f6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.ReverseProxyFeature.html
@@ -179,6 +179,37 @@
Property Value
+
+ |
+ Improve this Doc
+
+
+ View Source
+
+
+ SelectedDestination
+ Actual destination chosen as the target that received the current request.
+
+
+ Declaration
+
+ public DestinationInfo SelectedDestination { get; set; }
+
+ Property Value
+
+
+
+ Type
+ Description
+
+
+
+
+ DestinationInfo
+
+
+
+
Implements
IReverseProxyFeature
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
index e060a220c..ec46c2b89 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Middleware.html
@@ -77,6 +77,8 @@
Classes
+ PassiveHealthCheckMiddleware
+
ReverseProxyFeature
Store current ClusterConfig and Tracks proxy cluster destinations that are available to handle the current request.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
index 72f3c2482..ae010473c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterHealthCheckOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterActiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
-
@@ -68,12 +68,12 @@
-
+
- Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
- Active health probing options for a cluster.
+ Active health check options for a cluster.
@@ -99,30 +99,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterHealthCheckOptions
+ public struct ClusterActiveHealthCheckOptions
- Remarks
- Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
-Each "feature" can have its own struct.
-
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterHealthCheckOptions(Boolean, TimeSpan, TimeSpan, Int32, String)
+
+ ClusterActiveHealthCheckOptions(Boolean, Nullable<TimeSpan>, Nullable<TimeSpan>, String, String)
Declaration
- public ClusterHealthCheckOptions(bool enabled, TimeSpan interval, TimeSpan timeout, int port, string path)
+ public ClusterActiveHealthCheckOptions(bool enabled, TimeSpan? interval, TimeSpan? timeout, string policy, string path)
Parameters
@@ -140,18 +136,18 @@ Parameters
- TimeSpan
+ Nullable<TimeSpan>
interval
- TimeSpan
+ Nullable<TimeSpan>
timeout
- Int32
- port
+ String
+ policy
@@ -165,14 +161,14 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Interval
- Interval between health probes.
+
+ Interval
+ Health probe interval.
Declaration
- public TimeSpan Interval { get; }
+ public TimeSpan? Interval { get; }
Property Value
@@ -220,21 +216,21 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
-
Session affinitity options.
+Outgoing request configuration.
public sealed class SessionAffinityData
+ public sealed class ProxyHttpRequestOptions
Indicates whether session affinity is enabled.
+ +RequestTimeout
+Timeout for the outgoing request. +Default is 100 seconds.
Declaration
public bool Enabled { get; set; }
+ public TimeSpan? RequestTimeout { get; set; }
Property Value
Boolean | +Nullable<TimeSpan> |
FailurePolicy
-Strategy handling missing destination for an affinitized request.
+ +Version
+HTTP version for the outgoing request. +Default is HTTP/2.
Declaration
public string FailurePolicy { get; set; }
+ public Version Version { get; set; }
Property Value
String | +Version |
Mode
-Session affinity mode which is implemented by one of providers.
+ +VersionPolicy
+Version policy for the outgoing request.
+Defines whether to upgrade or downgrade HTTP version if possible.
+Default is RequestVersionOrLower
.
Declaration
public string Mode { get; set; }
+ public HttpVersionPolicy? VersionPolicy { get; set; }
Property Value
String | -- |
Settings
-Key-value pair collection holding extra settings specific to different affinity modes.
-Declaration
-public IDictionary<string, string> Settings { get; set; }
- Property Value
- + | + Improve this Doc + + + View Source + + +SelectedDestination
+The actual destination that the request was proxied to.
+Declaration
+DestinationInfo SelectedDestination { get; set; }
+ Property Value
+Type | +Description | +
---|---|
DestinationInfo | ++ |
Property Value
Improve this DocClass ConfigurationData
+ Class PassiveHealthCheckMiddleware
- Root of IConfiguration-first configuration model.
-
+
Root of IConfiguration-first configuration model.
-Namespace: Microsoft.ReverseProxy.Configuration.Contract
+Namespace: Microsoft.ReverseProxy.Middleware
Assembly: Microsoft.ReverseProxy.dll
-Syntax
+Syntax
public class ConfigurationData
+ public class PassiveHealthCheckMiddleware
Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Clusters
- Clusters.
-
+
+ PassiveHealthCheckMiddleware(RequestDelegate, IEnumerable<IPassiveHealthCheckPolicy>)
+
Declaration
- public Dictionary<string, ClusterData> Clusters { get; }
+ public PassiveHealthCheckMiddleware(RequestDelegate next, IEnumerable<IPassiveHealthCheckPolicy> policies)
- Property Value
+ Parameters
Clusters.
-public Dictionary<string, ClusterData> Clusters { get; }
+ public PassiveHealthCheckMiddleware(RequestDelegate next, IEnumerable<IPassiveHealthCheckPolicy> policies)
Type | +Name | Description | |
---|---|---|---|
Dictionary<String, ClusterData> | +RequestDelegate | +next | ++ |
IEnumerable<IPassiveHealthCheckPolicy> | +policies |
Methods +
| - Improve this Doc + Improve this Doc - View Source + View Source - -Routes
-Routes.
-Invoke(HttpContext)
+Declaration
public List<ProxyRouteData> Routes { get; }
+ public Task Invoke(HttpContext context)
Property Value
+Parameters
+Type | +Name | +Description | +
---|---|---|
HttpContext | +context | ++ |
Returns
List<ProxyRouteData> | +Task |
SelectedDestination
+Actual destination chosen as the target that received the current request.
+Declaration
+public DestinationInfo SelectedDestination { get; set; }
+ Property Value
+Type | +Description | +
---|---|
DestinationInfo | ++ |
Implements
Classes
+PassiveHealthCheckMiddleware
+ReverseProxyFeature
Store current ClusterConfig and Tracks proxy cluster destinations that are available to handle the current request.
Struct ClusterConfig.ClusterHealthCheckOptions
+ Struct ClusterActiveHealthCheckOptions
- Active health probing options for a cluster.
+ Active health check options for a cluster.
@@ -99,30 +99,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterHealthCheckOptions
+ public struct ClusterActiveHealthCheckOptions
- Remarks
- Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
-Each "feature" can have its own struct.
-
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterHealthCheckOptions(Boolean, TimeSpan, TimeSpan, Int32, String)
+
+ ClusterActiveHealthCheckOptions(Boolean, Nullable<TimeSpan>, Nullable<TimeSpan>, String, String)
Declaration
- public ClusterHealthCheckOptions(bool enabled, TimeSpan interval, TimeSpan timeout, int port, string path)
+ public ClusterActiveHealthCheckOptions(bool enabled, TimeSpan? interval, TimeSpan? timeout, string policy, string path)
Parameters
@@ -140,18 +136,18 @@ Parameters
- TimeSpan
+ Nullable<TimeSpan>
interval
- TimeSpan
+ Nullable<TimeSpan>
timeout
- Int32
- port
+ String
+ policy
@@ -165,14 +161,14 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Enabled
-
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Interval
- Interval between health probes.
+
+ Interval
+ Health probe interval.
Declaration
- public TimeSpan Interval { get; }
+ public TimeSpan? Interval { get; }
Property Value
@@ -220,21 +216,21 @@ Property Value
- TimeSpan
+ Nullable<TimeSpan>
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
-
Active health probing options for a cluster.
+Active health check options for a cluster.
Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
-Syntax
+Syntax
public struct ClusterHealthCheckOptions
+ public struct ClusterActiveHealthCheckOptions
Remarks
-Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
-Each "feature" can have its own struct.
Constructors
| - Improve this Doc + Improve this Doc - View Source + View Source - -ClusterHealthCheckOptions(Boolean, TimeSpan, TimeSpan, Int32, String)
+ +ClusterActiveHealthCheckOptions(Boolean, Nullable<TimeSpan>, Nullable<TimeSpan>, String, String)
Declaration
public ClusterHealthCheckOptions(bool enabled, TimeSpan interval, TimeSpan timeout, int port, string path)
+ public ClusterActiveHealthCheckOptions(bool enabled, TimeSpan? interval, TimeSpan? timeout, string policy, string path)
Parameters
TimeSpan | +Nullable<TimeSpan> | interval | ||
TimeSpan | +Nullable<TimeSpan> | timeout | ||
Int32 | -port | +String | +policy | |
Interval
-Interval between health probes.
+ +Interval
+Health probe interval.
Declaration
public TimeSpan Interval { get; }
+ public TimeSpan? Interval { get; }
Property Value
TimeSpan | +Nullable<TimeSpan> |
Path
-Port
-Port number.
+ +Policy
+Active health check policy.
Declaration
public int Port { get; }
+ public string Policy { get; }
Property Value
Int32 | +String |
Timeout
-Health probe timeout, after which the targeted endpoint is considered unhealthy.
+ +Timeout
+Health probe timeout, after which a destination is considered unhealthy.
Declaration
public TimeSpan Timeout { get; }
+ public TimeSpan? Timeout { get; }
Property Value
TimeSpan | +Nullable<TimeSpan> |
ClusterConfig.ClusterHealthCheckOptions | +ClusterHealthCheckOptions | healthCheckOptions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ClusterConfig.ClusterLoadBalancingOptions | +ClusterLoadBalancingOptions | loadBalancingOptions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ClusterConfig.ClusterSessionAffinityOptions | +ClusterSessionAffinityOptions | sessionAffinityOptions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | httpClientOptions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ClusterProxyHttpRequestOptions | +httpRequestOptions | ++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IReadOnlyDictionary<String, String> | metadata | @@ -189,7 +194,7 @@
ClusterConfig.ClusterHealthCheckOptions | +ClusterHealthCheckOptions |
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | ++ |
HttpRequestOptions
+ + +Declaration
+public ClusterProxyHttpRequestOptions HttpRequestOptions { get; }
+ Property Value
+Type | +Description | +||
---|---|---|---|
ClusterProxyHttpRequestOptions |
ClusterConfig.ClusterLoadBalancingOptions | +ClusterLoadBalancingOptions |
ClusterConfig.ClusterSessionAffinityOptions | +ClusterSessionAffinityOptions |
Type | +Name | Description | |
---|---|---|---|
TimeSpan | +IReadOnlyList<DestinationInfo> | +allDestinations | ++ |
IReadOnlyList<DestinationInfo> | +healthyDestinations |
Methods
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DelayUntil(TimeSpan, CancellationToken)
- Creates a task that completes when CurrentTime >= expiryTime.
-
+
+ AllDestinations
+
Declaration
- public Task DelayUntil(TimeSpan expiryTime, CancellationToken cancellationToken)
+ public IReadOnlyList<DestinationInfo> AllDestinations { get; }
- Parameters
+ Property Value
Creates a task that completes when CurrentTime >= expiryTime.
-public Task DelayUntil(TimeSpan expiryTime, CancellationToken cancellationToken)
+ public IReadOnlyList<DestinationInfo> AllDestinations { get; }
Type | -Name | Description | |
---|---|---|---|
TimeSpan | -expiryTime | -Time at which the returned task will be completed. - |
- |
CancellationToken | -cancellationToken | +IReadOnlyList<DestinationInfo> |
Returns
+ + | + Improve this Doc + + + View Source + + +HealthyDestinations
+ + +Declaration
+public IReadOnlyList<DestinationInfo> HealthyDestinations { get; }
+ Property Value
Task | -A task which completes at |
+ IReadOnlyList<DestinationInfo> | +
Implements
-Extension Methods
-Extension Methods
Class RouteHeaderData
+ Struct ClusterHealthCheckOptions
- Describes the matching criteria for a route.
+ All health check options for a cluster.
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class RouteHeaderData
+ public struct ClusterHealthCheckOptions
- Properties
+ Remarks
+ Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
+Each "feature" can have its own struct.
+
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- IsCaseSensitive
- Specifies whether header value comparisons should ignore case.
-When true
, Ordinal is used.
-When false
, OrdinalIgnoreCase is used.
-Defaults to false
.
-
+
+ ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions, ClusterActiveHealthCheckOptions)
+
Declaration
- public bool IsCaseSensitive { get; set; }
+ public ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions passive, ClusterActiveHealthCheckOptions active)
- Property Value
+ Parameters
Type
+ Name
Description
- Boolean
+ ClusterPassiveHealthCheckOptions
+ passive
+
+
+
+ ClusterActiveHealthCheckOptions
+ active
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
- Specifies how header values should be compared (e.g. exact matches Vs. by prefix).
-Defaults to ExactHeader.
+
+ Active
+ Active health check options.
Declaration
- public HeaderMatchMode Mode { get; set; }
+ public ClusterActiveHealthCheckOptions Active { get; }
Property Value
@@ -174,26 +174,26 @@ Property Value
- HeaderMatchMode
+ ClusterActiveHealthCheckOptions
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Name
- Name of the header to look for.
+
+ Enabled
+ Whether at least one type of health check is enabled.
Declaration
- public string Name { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -205,27 +205,26 @@ Property Value
- String
+ Boolean
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Values
- A collection of acceptable header values used during routing. Only one value must match.
-The list must not be empty unless using Exists.
+
+ Passive
+ Passive health check options.
Declaration
- public IReadOnlyList<string> Values { get; set; }
+ public ClusterPassiveHealthCheckOptions Passive { get; }
Property Value
@@ -237,7 +236,7 @@ Property Value
- IReadOnlyList<String>
+ ClusterPassiveHealthCheckOptions
@@ -250,10 +249,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
similarity index 58%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
index 23441d835..0f539416a 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyMatchData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterInfo.html
@@ -5,10 +5,10 @@
-
Class ProxyMatchData
+ Class ClusterInfo
-
@@ -68,18 +68,18 @@
-
+
- Class ProxyMatchData
+ Class ClusterInfo
- Describes the matching criteria for a route.
+ Representation of a cluster for use at runtime.
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public class ProxyMatchData
+ public sealed class ClusterInfo
+ Remarks
+ Note that while this class is immutable, specific members such as
+Config and DynamicState hold mutable references
+that can be updated atomically and which will always have latest information
+relevant to this cluster.
+All members are thread safe.
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Headers
- Only match requests that contain all of these headers.
-
+
+ ClusterId
+
Declaration
- public IReadOnlyList<RouteHeaderData> Headers { get; set; }
+ public string ClusterId { get; }
Property Value
@@ -139,26 +145,27 @@ Property Value
- IReadOnlyList<RouteHeaderData>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Hosts
- Only match requests with the given Host header.
+
+ Config
+ Encapsulates parts of a cluster that can change atomically
+in reaction to config changes.
Declaration
- public IReadOnlyList<string> Hosts { get; set; }
+ public ClusterConfig Config { get; }
Property Value
@@ -170,26 +177,27 @@ Property Value
- IReadOnlyList<String>
+ ClusterConfig
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Methods
- Only match requests that use these optional HTTP methods. E.g. GET, POST.
+
+ DynamicState
+ Encapsulates parts of a cluster that can change atomically
+in reaction to runtime state changes (e.g. dynamic endpoint discovery).
Declaration
- public IReadOnlyList<string> Methods { get; set; }
+ public ClusterDynamicState DynamicState { get; }
Property Value
@@ -201,42 +209,29 @@ Property Value
- IReadOnlyList<String>
+ ClusterDynamicState
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Path
- Only match requests with the given Path pattern.
+
+ UpdateDynamicState()
+ Recreates the DynamicState data.
Declaration
- public string Path { get; set; }
+ public void UpdateDynamicState()
- Property Value
-
-
-
- Type
- Description
-
-
-
-
- String
-
-
-
-
@@ -245,10 +240,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
similarity index 73%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
index 0d27260ef..36210eb70 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterLoadBalancingOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterLoadBalancingOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
-
@@ -68,10 +68,10 @@
-
+
- Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
public struct ClusterLoadBalancingOptions
@@ -106,13 +106,13 @@ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterLoadBalancingOptions(LoadBalancingMode)
+
+ ClusterLoadBalancingOptions(LoadBalancingMode)
Declaration
@@ -140,13 +140,13 @@ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Mode
+
+ Mode
Declaration
@@ -176,10 +176,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
index ad7b886cc..3b04f77bd 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Configuration.Contract.ProxyHttpClientData.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterPassiveHealthCheckOptions.html
@@ -5,10 +5,10 @@
-
Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
@@ -68,94 +68,102 @@
-
+
- Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
+ Passive health check options for a cluster.
+
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ProxyHttpClientData
+ public struct ClusterPassiveHealthCheckOptions
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClusterPassiveHealthCheckOptions(Boolean, String, Nullable<TimeSpan>)
Declaration
- public CertificateConfigData ClientCertificate { get; set; }
+ public ClusterPassiveHealthCheckOptions(bool enabled, string policy, TimeSpan? reactivationPeriod)
- Property Value
+ Parameters
Type
+ Name
Description
- CertificateConfigData
+ Boolean
+ enabled
+
+
+
+ String
+ policy
+
+
+
+ Nullable<TimeSpan>
+ reactivationPeriod
+ Properties
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
-
+
+ Enabled
+ Whether active health checks are enabled.
+
Declaration
- public bool DangerousAcceptAnyServerCertificate { get; set; }
+ public bool Enabled { get; }
Property Value
@@ -174,18 +182,19 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
-
+
+ Policy
+ Passive health check policy.
+
Declaration
- public int? MaxConnectionsPerServer { get; set; }
+ public string Policy { get; }
Property Value
@@ -197,25 +206,26 @@ Property Value
- Nullable<Int32>
+ String
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- SslProtocols
-
+
+ ReactivationPeriod
+ Destination reactivation period after which an unhealthy destination is considered healthy again.
+
Declaration
- public List<SslProtocols> SslProtocols { get; set; }
+ public TimeSpan? ReactivationPeriod { get; }
Property Value
@@ -227,7 +237,7 @@ Property Value
- List<SslProtocols>
+ Nullable<TimeSpan>
@@ -240,10 +250,10 @@ Property Value
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
similarity index 59%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
index 0973321b0..dd4f416f9 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterConfig.ClusterProxyHttpClientOptions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.RuntimeModel.ClusterProxyHttpClientOptions.html
@@ -5,10 +5,10 @@
-
Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
-
@@ -68,16 +68,16 @@
-
+
- Struct ClusterConfig.ClusterProxyHttpClientOptions
+ Struct ClusterProxyHttpClientOptions
Implements
-
+
Inherited Members
@@ -96,26 +96,26 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public struct ClusterProxyHttpClientOptions : IEquatable<ClusterConfig.ClusterProxyHttpClientOptions>
+ public struct ClusterProxyHttpClientOptions : IEquatable<ClusterProxyHttpClientOptions>
Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>)
+
+ ClusterProxyHttpClientOptions(Nullable<SslProtocols>, Boolean, X509Certificate2, Nullable<Int32>, Nullable<Boolean>)
Declaration
- public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer)
+ public ClusterProxyHttpClientOptions(SslProtocols? sslProtocols, bool acceptAnyServerCertificate, X509Certificate2 clientCertificate, int? maxConnectionsPerServer, bool? propagateActivityContext)
Parameters
@@ -147,19 +147,24 @@ Parameters
maxConnectionsPerServer
+
+ Nullable<Boolean>
+ propagateActivityContext
+
+
Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClientCertificate
Declaration
@@ -183,13 +188,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DangerousAcceptAnyServerCertificate
+
+ DangerousAcceptAnyServerCertificate
Declaration
@@ -213,13 +218,13 @@ Property Value
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- MaxConnectionsPerServer
+
+ MaxConnectionsPerServer
Declaration
@@ -243,13 +248,43 @@ Property Value
Describes the matching criteria for a route.
+All health check options for a cluster.
Inherited Members
-Namespace: Microsoft.ReverseProxy.Configuration.Contract
+Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
-Syntax
+Syntax
public class RouteHeaderData
+ public struct ClusterHealthCheckOptions
Properties
+ Remarks
+ Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
+Each "feature" can have its own struct.
+
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- IsCaseSensitive
- Specifies whether header value comparisons should ignore case.
-When true
, Ordinal is used.
-When false
, OrdinalIgnoreCase is used.
-Defaults to false
.
-
+
+ ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions, ClusterActiveHealthCheckOptions)
+
Declaration
- public bool IsCaseSensitive { get; set; }
+ public ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions passive, ClusterActiveHealthCheckOptions active)
- Property Value
+ Parameters
Struct used only to keep things organized as we add more configuration options inside of ClusterConfig
.
+Each "feature" can have its own struct.
Specifies whether header value comparisons should ignore case.
-When true
, Ordinal is used.
-When false
, OrdinalIgnoreCase is used.
-Defaults to false
.
public bool IsCaseSensitive { get; set; }
+ public ClusterHealthCheckOptions(ClusterPassiveHealthCheckOptions passive, ClusterActiveHealthCheckOptions active)
Type | +Name | Description | |
---|---|---|---|
Boolean | +ClusterPassiveHealthCheckOptions | +passive | ++ |
ClusterActiveHealthCheckOptions | +active |
Properties +
| - Improve this Doc + Improve this Doc - View Source + View Source - -Mode
-Specifies how header values should be compared (e.g. exact matches Vs. by prefix). -Defaults to ExactHeader.
+ +Active
+Active health check options.
Declaration
public HeaderMatchMode Mode { get; set; }
+ public ClusterActiveHealthCheckOptions Active { get; }
Property Value
HeaderMatchMode | +ClusterActiveHealthCheckOptions |
Name
-Name of the header to look for.
+ +Enabled
+Whether at least one type of health check is enabled.
Declaration
public string Name { get; set; }
+ public bool Enabled { get; }
Property Value
String | +Boolean |
Values
-A collection of acceptable header values used during routing. Only one value must match. -The list must not be empty unless using Exists.
+ +Passive
+Passive health check options.
Declaration
public IReadOnlyList<string> Values { get; set; }
+ public ClusterPassiveHealthCheckOptions Passive { get; }
Property Value
IReadOnlyList<String> | +ClusterPassiveHealthCheckOptions |
IReadOnlyList<RouteHeaderData> | +String |
Hosts
-Only match requests with the given Host header.
+ +Config
+Encapsulates parts of a cluster that can change atomically +in reaction to config changes.
Declaration
public IReadOnlyList<string> Hosts { get; set; }
+ public ClusterConfig Config { get; }
Property Value
IReadOnlyList<String> | +ClusterConfig |
Methods
-Only match requests that use these optional HTTP methods. E.g. GET, POST.
+ +DynamicState
+Encapsulates parts of a cluster that can change atomically +in reaction to runtime state changes (e.g. dynamic endpoint discovery).
Declaration
public IReadOnlyList<string> Methods { get; set; }
+ public ClusterDynamicState DynamicState { get; }
Property Value
IReadOnlyList<String> | +ClusterDynamicState |
Methods +
| - Improve this Doc + Improve this Doc - View Source + View Source - -Path
-Only match requests with the given Path pattern.
+ +UpdateDynamicState()
+Recreates the DynamicState data.
Declaration
public string Path { get; set; }
+ public void UpdateDynamicState()
Property Value
-Type | -Description | -
---|---|
String | -- |
Property Value
Struct ClusterConfig.ClusterLoadBalancingOptions
+ Struct ClusterLoadBalancingOptions
@@ -98,7 +98,7 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
-Syntax
+Syntax
public struct ClusterLoadBalancingOptions
Constructors
| - Improve this Doc + Improve this Doc - View Source + View Source - -ClusterLoadBalancingOptions(LoadBalancingMode)
+ +ClusterLoadBalancingOptions(LoadBalancingMode)
Declaration
@@ -140,13 +140,13 @@Properties
| - Improve this Doc + Improve this Doc - View Source + View Source - -Mode
+ +Mode
Declaration
@@ -176,10 +176,10 @@Property Value
Class ProxyHttpClientData
+ Struct ClusterPassiveHealthCheckOptions
-
+ Passive health check options for a cluster.
+
-
Inherited Members
-
- Namespace: Microsoft.ReverseProxy.Configuration.Contract
+ Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class ProxyHttpClientData
+ public struct ClusterPassiveHealthCheckOptions
- Properties
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- ClientCertificate
+
+ ClusterPassiveHealthCheckOptions(Boolean, String, Nullable<TimeSpan>)
Declaration
- public CertificateConfigData ClientCertificate { get; set; }
+ public ClusterPassiveHealthCheckOptions(bool enabled, string policy, TimeSpan? reactivationPeriod)
- Property Value
+ Parameters
Passive health check options for a cluster.
+Inherited Members
-public sealed class ProxyHttpClientData
+ public struct ClusterPassiveHealthCheckOptions
Constructors
| - Improve this Doc + Improve this Doc - View Source + View Source - -ClientCertificate
+ +ClusterPassiveHealthCheckOptions(Boolean, String, Nullable<TimeSpan>)
Declaration
public CertificateConfigData ClientCertificate { get; set; }
+ public ClusterPassiveHealthCheckOptions(bool enabled, string policy, TimeSpan? reactivationPeriod)
Property Value
+Parameters
Type | +Name | Description | |
---|---|---|---|
CertificateConfigData | +Boolean | +enabled | ++ |
String | +policy | ++ | |
Nullable<TimeSpan> | +reactivationPeriod |
Properties +
| - Improve this Doc + Improve this Doc - View Source + View Source - -DangerousAcceptAnyServerCertificate
- + +Enabled
+Whether active health checks are enabled.
+Declaration
public bool DangerousAcceptAnyServerCertificate { get; set; }
+ public bool Enabled { get; }
Property Value
MaxConnectionsPerServer
- + +Policy
+Passive health check policy.
+Declaration
public int? MaxConnectionsPerServer { get; set; }
+ public string Policy { get; }
Property Value
Nullable<Int32> | +String |
SslProtocols
- + +ReactivationPeriod
+Destination reactivation period after which an unhealthy destination is considered healthy again.
+Declaration
public List<SslProtocols> SslProtocols { get; set; }
+ public TimeSpan? ReactivationPeriod { get; }
Property Value
List<SslProtocols> | +Nullable<TimeSpan> |
maxConnectionsPerServer | + | |
Nullable<Boolean> | +propagateActivityContext | ++ |
Properties
| - Improve this Doc + Improve this Doc - View Source + View Source - -ClientCertificate
+ +ClientCertificate
Declaration
@@ -183,13 +188,13 @@Property Value
DangerousAcceptAnyServerCertificate
+ +DangerousAcceptAnyServerCertificate
Declaration
@@ -213,13 +218,13 @@Property Value
MaxConnectionsPerServer
+ +MaxConnectionsPerServer
Declaration
@@ -243,13 +248,43 @@Property Value
PropagateActivityContext
+ + +Declaration
+public bool? PropagateActivityContext { get; }
+ Property Value
+Type | +Description | +
---|---|
Nullable<Boolean> | ++ |
SslProtocols
+ +SslProtocols
Declaration
@@ -275,18 +310,18 @@Methods
| - Improve this Doc + Improve this Doc - View Source + View Source - -Equals(ClusterConfig.ClusterProxyHttpClientOptions)
+ +Equals(ClusterProxyHttpClientOptions)
Declaration
public bool Equals(ClusterConfig.ClusterProxyHttpClientOptions other)
+ public bool Equals(ClusterProxyHttpClientOptions other)
Parameters
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | other |
Equals(Object)
+ +Equals(Object)
Declaration
@@ -371,13 +406,13 @@Overrides
| - Improve this Doc + Improve this Doc - View Source + View Source - -GetHashCode()
+ +GetHashCode()
Declaration
@@ -405,18 +440,18 @@Operators
| - Improve this Doc + Improve this Doc - View Source + View Source - -Equality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+ +Equality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
public static bool operator ==(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator ==(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | left | |
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | right |
Inequality(ClusterConfig.ClusterProxyHttpClientOptions, ClusterConfig.ClusterProxyHttpClientOptions)
+ +Inequality(ClusterProxyHttpClientOptions, ClusterProxyHttpClientOptions)
Declaration
public static bool operator !=(ClusterConfig.ClusterProxyHttpClientOptions left, ClusterConfig.ClusterProxyHttpClientOptions right)
+ public static bool operator !=(ClusterProxyHttpClientOptions left, ClusterProxyHttpClientOptions right)
Parameters
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | left | |
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | right |
FailurePolicy
+ +FailurePolicy
Declaration
@@ -215,13 +215,13 @@Property Value
Mode
+ +Mode
Declaration
@@ -245,13 +245,13 @@Property Value
Settings
+ +Settings
Declaration
@@ -281,10 +281,10 @@Property Value
Constructors
| - Improve this Doc + Improve this Doc View Source -DestinationConfig(String)
+DestinationConfig(String, String)
Declaration
public DestinationConfig(string address)
+ public DestinationConfig(string address, string health)
Parameters
address | + | |
String | +health | ++ |
Properties
@@ -159,11 +164,12 @@ Properties
Improve this Doc
- View Source
+ View Source
Address
-
+ Endpoint accepting proxied requests.
+
Declaration
@@ -184,6 +190,37 @@ Property Value
Address
- +Endpoint accepting proxied requests.
+Declaration
Property Value
Health
+Endpoint accepting active health check probes.
+Declaration
+public string Health { get; }
+ Property Value
+Type | +Description | +
---|---|
String | ++ |
Class DestinationDynamicState
+ Class DestinationHealthState
-
+ Tracks destination passive and active health states.
+
Inherited Members
@@ -106,60 +107,58 @@ Inherited Members
Namespace: Microsoft.ReverseProxy.RuntimeModel
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public sealed class DestinationDynamicState
+ public class DestinationHealthState
- Constructors
+ Properties
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- DestinationDynamicState(DestinationHealth)
-
+
+ Active
+ Active health state.
+
Declaration
- public DestinationDynamicState(DestinationHealth health)
+ public DestinationHealth Active { get; set; }
- Parameters
+ Property Value
Tracks destination passive and active health states.
+Inherited Members
@@ -106,60 +107,58 @@Inherited Members
public sealed class DestinationDynamicState
+ public class DestinationHealthState
Properties
| - Improve this Doc + Improve this Doc - View Source + View Source - -DestinationDynamicState(DestinationHealth)
- + +Active
+Active health state.
+Declaration
public DestinationDynamicState(DestinationHealth health)
+ public DestinationHealth Active { get; set; }
Parameters
+Property Value
Type | -Name | Description |
---|---|---|
DestinationHealth | -health |
Properties -
| - Improve this Doc + Improve this Doc - View Source + View Source - -Health
- + +Passive
+Passive health state.
+Declaration
public DestinationHealth Health { get; }
+ public DestinationHealth Passive { get; set; }
Property Value
DynamicState
-A snapshot of the current health state.
+ +Health
+Mutable health state for this destination.
Declaration
public DestinationDynamicState DynamicState { get; }
+ public DestinationHealthState Health { get; }
Property Value
DestinationDynamicState | +DestinationHealthState |
String | -key | -Property key. + | IEnumerable<ClusterInfo> | +clusters | +Clusters to check the health of their destinations. |
Returns
+Type | +Description | +||||
---|---|---|---|---|---|
String | -value | -Property value. + | Task | +Task representing the health check process. |
TimeSpan | +String |
TimeSpan | -expiryTime | -Time at which the returned task will be completed. + | ClusterInfo | +cluster | +Cluster. |
CancellationToken | -cancelationToken | -Cancelation token for the created task. + | IReadOnlyList<DestinationProbingResult> | +probingResults | +Destination probing results. |
Returns
-Type | -Description | -
---|---|
Task | -A task which completes at |
-
Extension Methods
-Extension Methods
Namespace Microsoft.ReverseProxy.Abstractions.Telemetry
+ Namespace Microsoft.ReverseProxy.Service.HealthChecks
+ Structs
+
+ DestinationProbingResult
+ Result of a destination's active health probing.
+
+ NewActiveDestinationHealth
+ Stores a new active health state for the given destination.
+
Interfaces
- IOperationContext
- Provides contextual information for an ongoing operation.
-Operation contexts support nesting, and the current context
-can be obtained from Context.
+ IActiveHealthCheckMonitor
+ Actively monitors destinations health.
+
+ IActiveHealthCheckPolicy
+ Active health check evaulation policy.
+
+ IDestinationHealthUpdater
+ Updates destinations' health states when it's requested by a health check policy
+while taking into account not only the new evaluated value but also the overall current cluster's health state.
+
+ IPassiveHealthCheckPolicy
+ Passive health check evaluation policy.
- IOperationLogger<TCategoryName>
- Provides methods to log telemetry for the execution of chunks of
-synchronous or asynchronous operations.
+ IProbingRequestFactory
+ A factory for creating HttpRequestMessages for active health probes to be sent to destinations.
Result of a destination's active health probing.
+Stores a new active health state for the given destination.
+Provides contextual information for an ongoing operation. -Operation contexts support nesting, and the current context -can be obtained from Context.
+IActiveHealthCheckMonitor
+Actively monitors destinations health.
+IActiveHealthCheckPolicy
+Active health check evaulation policy.
+IDestinationHealthUpdater
+Updates destinations' health states when it's requested by a health check policy +while taking into account not only the new evaluated value but also the overall current cluster's health state.
+IPassiveHealthCheckPolicy
+Passive health check evaluation policy.
IOperationLogger<TCategoryName>
-Provides methods to log telemetry for the execution of chunks of -synchronous or asynchronous operations.
+IProbingRequestFactory
+A factory for creating HttpRequestMessages for active health probes to be sent to destinations.
Property Value
NewOptions
-New ClusterConfig.ClusterProxyHttpClientOptions instance +
New ClusterProxyHttpClientOptions instance specifying the settings for a new client. CANNOT be null.
Declaration
public ClusterConfig.ClusterProxyHttpClientOptions NewOptions { get; set; }
+ public ClusterProxyHttpClientOptions NewOptions { get; set; }
Property Value
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions |
ClusterConfig.ClusterProxyHttpClientOptions | +ClusterProxyHttpClientOptions | ||
HttpContext | context | -The original HttpContext for accessing other state. - |
+ |
StringValues | values | -The original header value(s). - |
+
Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -202,14 +201,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -182,14 +181,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -179,14 +178,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -201,8 +198,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
index fc36ca210..715b5bb6c 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedPathBaseTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
index 15e1961d5..8a67607ac 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
index b925785b1..e7e57a66e 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
@@ -167,8 +167,7 @@ Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Classes
- NullOperationContext
- Implementation of IOperationContext
-which doesn't do anything.
-
- NullOperationLogger<TCategoryName>
- Implementation of IOperationLogger<TCategoryName>
-which doesn't log anything.
-
- TextOperationLogger<TCategoryName>
- Default implementation of IOperationLogger<TCategoryName>
-which logs activity start / end events as Information messages.
+ ActivityPropagationHandler
+ ActivityPropagationHandler propagates the current Activity to the downstream service
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
index b7a6b75e4..9bef7e32d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
@@ -75,15 +75,6 @@
- Classes
-
- MonotonicTimer
- Provides a way to measure time in a monotonic fashion, immune to any system clock changes.
-The time is measured from the moment the class is instantiated.
-
- MonotonicTimerExtensions
- Extension methods for MonotonicTimer.
-
Interfaces
IRandomFactory
diff --git a/docs/docfx/_site/api/index.html b/docs/docfx/_site/api/index.html
index fe96fb5d2..b20b5cb8d 100644
--- a/docs/docfx/_site/api/index.html
+++ b/docs/docfx/_site/api/index.html
@@ -78,7 +78,7 @@ API Documentation for YARP
diff --git a/docs/docfx/_site/api/toc.html b/docs/docfx/_site/api/toc.html
index 2aafef250..3a56033d4 100644
--- a/docs/docfx/_site/api/toc.html
+++ b/docs/docfx/_site/api/toc.html
@@ -43,6 +43,12 @@
Microsoft.ReverseProxy.Abstractions
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
index 15e1961d5..8a67607ac 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.RequestHeaderXForwardedProtoTransform.html
@@ -157,8 +157,7 @@ Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
index b925785b1..e7e57a66e 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
@@ -167,8 +167,7 @@ Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Classes
- NullOperationContext
- Implementation of IOperationContext
-which doesn't do anything.
-
- NullOperationLogger<TCategoryName>
- Implementation of IOperationLogger<TCategoryName>
-which doesn't log anything.
-
- TextOperationLogger<TCategoryName>
- Default implementation of IOperationLogger<TCategoryName>
-which logs activity start / end events as Information messages.
+ ActivityPropagationHandler
+ ActivityPropagationHandler propagates the current Activity to the downstream service
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
index b7a6b75e4..9bef7e32d 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.html
@@ -75,15 +75,6 @@
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, StringValues)
- Transforms the given value and returns the result.
-
+
Declaration
@@ -177,14 +176,12 @@ Parameters
HttpContext
context
- The original HttpContext for accessing other state.
-
+
StringValues
values
- The original header value(s).
-
+
@@ -199,8 +196,7 @@ Returns
StringValues
- The transformed result.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
index b925785b1..e7e57a66e 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.RuntimeModel.Transforms.ResponseHeaderValueTransform.html
@@ -167,8 +167,7 @@ Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Classes
- NullOperationContext
- Implementation of IOperationContext
-which doesn't do anything.
-
- NullOperationLogger<TCategoryName>
- Implementation of IOperationLogger<TCategoryName>
-which doesn't log anything.
-
- TextOperationLogger<TCategoryName>
- Default implementation of IOperationLogger<TCategoryName>
-which logs activity start / end events as Information messages.
+ ActivityPropagationHandler
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Transforms the given value and returns the result.
-Parameters
The original HttpContext for accessing other state.
-The original header value(s).
-Returns
The transformed result.
-Methods
Apply(HttpContext, HttpResponseMessage, StringValues)
- Transforms the given response header value and returns the result.
-
+
Declaration
@@ -187,20 +186,17 @@ Parameters
HttpContext
context
- The current request context.
-
+
HttpResponseMessage
response
- The proxied response.
-
+
StringValues
values
- The header value to transform.
-
+
@@ -215,8 +211,7 @@ Returns
StringValues
- The transformed value.
-
+
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
index 2999886e6..9971d0477 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Service.SessionAffinity.ISessionAffinityProvider.html
@@ -119,19 +119,19 @@ Methods
|
- Improve this Doc
+ Improve this Doc
View Source
- AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+ AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
- void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
@@ -150,7 +150,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
@@ -165,19 +165,19 @@ Parameters
|
- Improve this Doc
+ Improve this Doc
View Source
- FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+ FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
- AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
@@ -208,7 +208,7 @@ Parameters
- ClusterConfig.ClusterSessionAffinityOptions
+ ClusterSessionAffinityOptions
options
Affinity options.
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
-
@@ -68,21 +68,39 @@
-
+
- Class MonotonicTimerExtensions
+ Class ActivityPropagationHandler
- Extension methods for MonotonicTimer.
+ ActivityPropagationHandler propagates the current Activity to the downstream service
Inheritance
- MonotonicTimerExtensions
+
+
+ ActivityPropagationHandler
+
+
+ Implements
+
- Namespace: Microsoft.ReverseProxy.Utilities
+ Namespace: Microsoft.ReverseProxy.Telemetry
Assembly: Microsoft.ReverseProxy.dll
- Syntax
+ Syntax
- public static class MonotonicTimerExtensions
+ public sealed class ActivityPropagationHandler : DelegatingHandler, IDisposable
- Methods
+ Constructors
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- CancelAfter(CancellationTokenSource, TimeSpan, IMonotonicTimer)
- Operates like CancelAfter(TimeSpan) but supporting specifying a custom timer.
-
+
+ ActivityPropagationHandler(HttpMessageHandler)
+
Declaration
- public static void CancelAfter(this CancellationTokenSource cancellationTokenSource, TimeSpan timeout, IMonotonicTimer timer)
+ public ActivityPropagationHandler(HttpMessageHandler innerHandler)
Parameters
@@ -140,40 +157,28 @@ Parameters
- CancellationTokenSource
- cancellationTokenSource
- Token to cancel after expiration is complete.
-
-
-
- TimeSpan
- timeout
- Timeout after which the cancellationTokenSource will be canceled.
-
-
-
- IMonotonicTimer
- timer
- Timer to perform the measurement of time for determining when to cancel.
-
+ HttpMessageHandler
+ innerHandler
+
+ Methods
+
|
- Improve this Doc
+ Improve this Doc
- View Source
+ View Source
-
- Delay(IMonotonicTimer, TimeSpan, CancellationToken)
- Creates a task that completes delay
after CurrentTime.
-
+
+ SendAsync(HttpRequestMessage, CancellationToken)
+
Declaration
- public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
@@ -186,22 +191,14 @@ Parameters
- IMonotonicTimer
- timer
- IMonotonicTimer instance.
-
-
-
- TimeSpan
- delay
- How much time to delay for.
-
+ HttpRequestMessage
+ request
+
CancellationToken
- cancellation
- Cancellation token.
-
+ cancellationToken
+
@@ -215,12 +212,17 @@ Returns
- Task
- A task which completes when the delay has elapsed.
-
+ Task<HttpResponseMessage>
+
+ Overrides
+
+ Implements
+
@@ -229,10 +231,10 @@ Returns
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
deleted file mode 100644
index 3ba9c1720..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullMetricCreator.html
+++ /dev/null
@@ -1,582 +0,0 @@
-
-
-
-
-
-
-
-
Class NullMetricCreator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
deleted file mode 100644
index 6b6f3789b..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.NullOperationLogger-1.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
-
- Class NullOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
deleted file mode 100644
index 1f0675fb1..000000000
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.TextOperationLogger-1.html
+++ /dev/null
@@ -1,488 +0,0 @@
-
-
-
-
-
-
-
- Class TextOperationLogger<TCategoryName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
index bff2da0f0..f3ac9d049 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.html
@@ -77,17 +77,8 @@
Transforms the given response header value and returns the result.
-Parameters
The current request context.
-The proxied response.
-The header value to transform.
-Returns
The transformed value.
-Methods
| - Improve this Doc + Improve this Doc View Source -AffinitizeRequest(HttpContext, ClusterConfig.ClusterSessionAffinityOptions, DestinationInfo)
+AffinitizeRequest(HttpContext, ClusterSessionAffinityOptions, DestinationInfo)
Affinitize the current request to the given DestinationInfo by setting the affinity key extracted from DestinationInfo.
Declaration
void AffinitizeRequest(HttpContext context, in ClusterConfig.ClusterSessionAffinityOptions options, DestinationInfo destination)
+ void AffinitizeRequest(HttpContext context, in ClusterSessionAffinityOptions options, DestinationInfo destination)
Parameters
ClusterConfig.ClusterSessionAffinityOptions | +ClusterSessionAffinityOptions | options | Affinity options. |
@@ -165,19 +165,19 @@
FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterConfig.ClusterSessionAffinityOptions)
+FindAffinitizedDestinations(HttpContext, IReadOnlyList<DestinationInfo>, String, ClusterSessionAffinityOptions)
Finds DestinationInfo to which the current request is affinitized by the affinity key.
Declaration
AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterConfig.ClusterSessionAffinityOptions options)
+ AffinityResult FindAffinitizedDestinations(HttpContext context, IReadOnlyList<DestinationInfo> destinations, string clusterId, in ClusterSessionAffinityOptions options)
Parameters
ClusterConfig.ClusterSessionAffinityOptions | +ClusterSessionAffinityOptions | options | Affinity options. |
diff --git a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
similarity index 54%
rename from docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
rename to docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
index ec39ce03a..c59d2e0a6 100644
--- a/docs/docfx/_site/api/Microsoft.ReverseProxy.Utilities.MonotonicTimerExtensions.html
+++ b/docs/docfx/_site/api/Microsoft.ReverseProxy.Telemetry.ActivityPropagationHandler.html
@@ -5,10 +5,10 @@
-
CancellationTokenSource | -cancellationTokenSource | -Token to cancel after expiration is complete. - |
- |||
TimeSpan | -timeout | -Timeout after which the cancellationTokenSource will be canceled. - |
- |||
IMonotonicTimer | -timer | -Timer to perform the measurement of time for determining when to cancel. - |
+ HttpMessageHandler | +innerHandler | +
Methods +
| - Improve this Doc + Improve this Doc - View Source + View Source - -Delay(IMonotonicTimer, TimeSpan, CancellationToken)
-Creates a task that completes delay
after CurrentTime.
SendAsync(HttpRequestMessage, CancellationToken)
+Declaration
public static Task Delay(this IMonotonicTimer timer, TimeSpan delay, CancellationToken cancellation)
+ protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
Parameters
IMonotonicTimer | -timer | -IMonotonicTimer instance. - |
- |||
TimeSpan | -delay | -How much time to delay for. - |
+ HttpRequestMessage | +request | +|
CancellationToken | -cancellation | -Cancellation token. - |
+ cancellationToken | +
Returns
A task which completes when the delay has elapsed.
-Overrides
+ +Implements
+Implementation of IOperationContext -which doesn't do anything.
-Implementation of IOperationLogger<TCategoryName> -which doesn't log anything.
-Default implementation of IOperationLogger<TCategoryName> -which logs activity start / end events as Information messages.
+ActivityPropagationHandler
+ActivityPropagationHandler propagates the current Activity to the downstream service
Provides a way to measure time in a monotonic fashion, immune to any system clock changes. -The time is measured from the moment the class is instantiated.
-Extension methods for MonotonicTimer.
-Swapping authentication types
Loading Configuration
}Configuration contract
-File-based configuration is defined by the types in Microsoft.ReverseProxy.Configuration.Contract namespace. Contract types have a simple POCO-like design aimed to a convenient serialization/deserialization, but not to an efficient usage in runtime. There is another runtime-friendly abstract model living in Microsoft.ReverseProxy.Abstractions namespace that is used by the most of reverse proxy logic. The default IProxyConfigProvider implementation converts Contracts to Abstractions on the applicaiton start and each time the configuration changes.
+File-based configuration is dynamically mapped to the types in Microsoft.ReverseProxy.Abstractions namespace by an IProxyConfigProvider implementation converts at application start and each time the configuration changes.
Configuration Structure
The configuration consists of a named section that you specified above via Configuration.GetSection("ReverseProxy")
, and contains subsections for routes and clusters.
Example:
@@ -137,11 +137,11 @@Routes
Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
+Headers, Authorization, CORS, and other route based policies can be configured on each route entry. For additional fields see ProxyRoute.
The proxy will apply the given matching criteria and policies, and then pass off the request to the specified cluster.
Clusters
The clusters section is an unordered collection of named clusters. A cluster primarily contains a collection of named destinations and their addresses, any of which is considered capable of handling requests for a given route. The proxy will process the request according to the route and cluster configuration in order to select a destination.
-For additional fields see Cluster.
+For additional fields see Cluster.
Clusters
Example
Disable CORS
Error handling
Getting Started with YARP
YARP is designed as a library that provides the core proxy functionality which you can then customize by adding or replacing modules. YARP is currently provided as a NuGet package and code snippets. We plan on providing a project template and pre-built exe in the future.
-YARP 1.0.0 Preview 6 supports ASP.NET Core 3.1 and 5.0.0 RC 2 or later. You can download the .NET 5 Preview SDK from https://dotnet.microsoft.com/download/dotnet/5.0. 5.0 requires Visual Studio 2019 v16.8 Preview3 or newer.
+YARP 1.0.0 Preview 7 supports ASP.NET Core 3.1 and 5.0.0. You can download the .NET 5 SDK from https://dotnet.microsoft.com/download/dotnet/5.0. .NET 5.0 on Windows requires Visual Studio 2019 v16.8 or newer.
Create a new project
Start by creating an "Empty" ASP.NET Core application using the command line:
dotnet new web -n MyProxy
@@ -85,7 +85,7 @@ Update the project file
And then add:
<ItemGroup>
- <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.6.*" />
+ <PackageReference Include="Microsoft.ReverseProxy" Version="1.0.0-preview.7.*" />
</ItemGroup>
Update Startup
@@ -162,7 +162,7 @@Configuration
Configuration
};Contract
-RouteHeaderData defines the configuration contract, where RouteHeader defines the code contract. The only difference in these contracts is that RouteHeaderData defines an extra Value
property for convenience, Values
is preferred if specified.
RouteHeader defines the code contract and is mapped from config.
Name
The header name to check for on the request. A non-empty value is required. This field is case-insensitive per the HTTP RFCs.
Values
@@ -300,7 +300,7 @@Scenario 4 - Multiple Headers
Welcome to the docs
Proxy HTTP Client Configuration
Introduced: preview5
Introduction
Each Cluster has a dedicated HttpMessageInvoker instance used to proxy requests to its Destinations. The configuration is defined per cluster. On YARP startup, all Clusters
get new HttpMessageInvoker
instances, however if later the Cluster
configuration gets changed the IProxyHttpClientFactory will re-run and decide if it should create a new HttpMessageInvoker
or keep using the existing one. The default IProxyHttpClientFactory
implementation creates a new HttpMessageInvoker
when there are changes to the ProxyHttpClientOptions.
Properties of outgoing requests for a given cluster can be configured as well. They are defined in ProxyHttpRequestOptions.
The configuration is represented differently if you're using the IConfiguration model or the code-first model.
IConfiguration
-HTTP client configuration contract consists of ProxyHttpClientData and CertificateConfigData types defining the following configuration schema. These types are focused on defining serializable configuration. The code based HTTP client configuration model is described below in the "Code Configuration" section.
+These types are focused on defining serializable configuration. The code based configuration model is described below in the "Code Configuration" section.
+HttpClient
+HTTP client configuration is based on ProxyHttpClientOptions and represented by the following configuration schema.
"HttpClient": {
"SslProtocols": [ "<protocol-names>" ],
"MaxConnectionsPerServer": "<int>",
@@ -140,8 +143,22 @@ IConfiguration
}
+HttpRequest
+HTTP request configuration is based on ProxyHttpRequestOptions and represented by the following configuration schema.
+"HttpRequest": {
+ "RequestTimeout": "<timespan>",
+ "Version": "<string>",
+ "VersionPolicy": ["RequestVersionOrLower", "RequestVersionOrHigher", "RequestVersionExact"]
+}
+
+Configuration settings:
+-
+
- RequestTimeout - the timeout for the outgoing request sent by HttpMessageInvoker.SendAsync. If not specified, 100 seconds is used. +
- Version - outgoing request version. The supported values at the moment are
1.0
,1.1
and2
. Default value is 2.
+ - VersionPolicy - defines how the final version is selected for the outgoing requests. This feature is available from .NET 5.0, see HttpRequestMessage.VersionPolicy. The default value is
RequestVersionOrLower
.
+
Configuration example
-The below example shows 2 samples of HTTP client configurations for cluster1
and cluster2
.
The below example shows 2 samples of HTTP client and request configurations for cluster1
and cluster2
.
{
"Clusters": {
"cluster1": {
@@ -156,6 +173,9 @@ Configuration example
"MaxConnectionsPerServer": "10",
"DangerousAcceptAnyServerCertificate": "true"
},
+ "HttpRequest": {
+ "RequestTimeout": "00:00:30"
+ },
"Destinations": {
"cluster1/destination1": {
"Address": "https://localhost:10000/"
@@ -176,6 +196,10 @@ Configuration example
"Password": "1234abc"
}
},
+ "HttpRequest": {
+ "Version": "1.1",
+ "VersionPolicy": "RequestVersionExact"
+ },
"Destinations": {
"cluster2/destination1": {
"Address": "https://localhost:10001/"
@@ -186,7 +210,7 @@ Configuration example
}
Code Configuration
-HTTP client configuration abstraction constists of the only type ProxyHttpClientOptions defined as follows.
+HTTP client configuration abstraction consists of the only type ProxyHttpClientOptions defined as follows.
public sealed class ProxyHttpClientOptions
{
public List<SslProtocols> SslProtocols { get; set; }
@@ -198,7 +222,7 @@ Code Configuration
public int? MaxConnectionsPerServer { get; set; }
}
-Note that instead of defining certificate location as it was in CertificateConfigData model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
+Note that instead of defining certificate location as it was in the config model, this type exposes a fully constructed X509Certificate certificate. Conversion from the configuration contract to the abstraction model is done by a IProxyConfigProvider which loads a client certificate into memory.
The following is an example of ProxyHttpClientOptions
using code based configuration. An instance of ProxyHttpClientOptions
is assigned to the Cluster.HttpClient property before passing the Cluster
array to LoadFromMemory
method.
public void ConfigureServices(IServiceCollection services)
{
@@ -235,6 +259,7 @@ Code Configuration
Custom IProxyHttpClientFactory
In case the direct control on a proxy HTTP client construction is necessary, the default IProxyHttpClientFactory can be replaced with a custom one. In example, that custom logic can use Cluster's metadata as an extra data source for HttpMessageInvoker configuration. However, it's still recommended for any custom factory to set the following HttpMessageInvoker
properties to the same values as the default factory does in order to preserve a correct reverse proxy behavior.
Always return an HttpMessageInvoker instance rather than an HttpClient instance which derives from HttpMessageInvoker. HttpClient buffers responses by default which breaks streaming scenarios and increases memory usage and latency.
new SocketsHttpHandler
{
UseProxy = false,
@@ -295,7 +320,7 @@ Custom IProxyHttpClientFactory
diff --git a/docs/docfx/_site/articles/runtimes.html b/docs/docfx/_site/articles/runtimes.html
index 4b7aabc44..8b8bf8f9b 100644
--- a/docs/docfx/_site/articles/runtimes.html
+++ b/docs/docfx/_site/articles/runtimes.html
@@ -93,7 +93,7 @@
Related 5.0 Runtime Improvements
diff --git a/docs/docfx/_site/articles/session-affinity.html b/docs/docfx/_site/articles/session-affinity.html
index b25129a10..ae8348f1b 100644
--- a/docs/docfx/_site/articles/session-affinity.html
+++ b/docs/docfx/_site/articles/session-affinity.html
@@ -153,7 +153,7 @@
Request pipeline
diff --git a/docs/docfx/_site/articles/toc.html b/docs/docfx/_site/articles/toc.html
index 66281f436..c4cee7bcd 100644
--- a/docs/docfx/_site/articles/toc.html
+++ b/docs/docfx/_site/articles/toc.html
@@ -45,6 +45,9 @@
Transforms
+
+ Destinations health checks
+