你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
FabricClient.HealthClient.GetClusterHealthAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
GetClusterHealthAsync(ClusterHealthQueryDescription, TimeSpan, CancellationToken) |
使用查询说明、超时和取消令牌异步获取 Service Fabric 群集的运行状况。 |
GetClusterHealthAsync(TimeSpan, CancellationToken) |
使用指定的超时和取消令牌异步获取 Service Fabric 群集的运行状况。 |
GetClusterHealthAsync(ClusterHealthPolicy, TimeSpan, CancellationToken) |
使用指定的运行状况策略、超时和取消令牌异步获取 Service Fabric 群集的运行状况。 |
GetClusterHealthAsync(ClusterHealthQueryDescription) |
使用查询说明异步获取 Service Fabric 群集的运行状况。 |
GetClusterHealthAsync() |
异步获取 Service Fabric 群集的运行状况。 |
GetClusterHealthAsync(ClusterHealthPolicy) |
异步获取 Service Fabric 群集的运行状况,并使用指定的策略对其进行评估。 |
GetClusterHealthAsync(ClusterHealthQueryDescription, TimeSpan, CancellationToken)
使用查询说明、超时和取消令牌异步获取 Service Fabric 群集的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync (System.Fabric.Description.ClusterHealthQueryDescription queryDescription, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetClusterHealthAsync : System.Fabric.Description.ClusterHealthQueryDescription * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync (queryDescription As ClusterHealthQueryDescription, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of ClusterHealth)
参数
- queryDescription
- ClusterHealthQueryDescription
定义查询参数(如运行状况策略、筛选器等)的查询说明。
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetClusterHealthAsync(TimeSpan, CancellationToken)
使用指定的超时和取消令牌异步获取 Service Fabric 群集的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync (TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetClusterHealthAsync : TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync (timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of ClusterHealth)
参数
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetClusterHealthAsync(ClusterHealthPolicy, TimeSpan, CancellationToken)
使用指定的运行状况策略、超时和取消令牌异步获取 Service Fabric 群集的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync (System.Fabric.Health.ClusterHealthPolicy healthPolicy, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetClusterHealthAsync : System.Fabric.Health.ClusterHealthPolicy * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync (healthPolicy As ClusterHealthPolicy, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of ClusterHealth)
参数
- healthPolicy
- ClusterHealthPolicy
用于评估群集运行状况的群集运行状况策略。
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetClusterHealthAsync(ClusterHealthQueryDescription)
使用查询说明异步获取 Service Fabric 群集的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync (System.Fabric.Description.ClusterHealthQueryDescription queryDescription);
member this.GetClusterHealthAsync : System.Fabric.Description.ClusterHealthQueryDescription -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync (queryDescription As ClusterHealthQueryDescription) As Task(Of ClusterHealth)
参数
- queryDescription
- ClusterHealthQueryDescription
定义查询参数(如运行状况策略、筛选器等)的查询说明。
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetClusterHealthAsync()
异步获取 Service Fabric 群集的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync ();
member this.GetClusterHealthAsync : unit -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync () As Task(Of ClusterHealth)
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。
注解
以下示例获取群集的运行状况。
public static bool GetClusterHealth(string clusterConnection)
{
ClusterHealth clusterHealth;
// Connect to the cluster.
FabricClient fabricClient = new FabricClient(clusterConnection);
// Get the cluster health.
try
{
clusterHealth = fabricClient.HealthManager.GetClusterHealthAsync().Result;
}
catch (Exception e)
{
Console.WriteLine("Error: " + e.Message);
if (e.InnerException != null)
Console.WriteLine(" Inner Exception: " + e.InnerException.Message);
return false;
}
// Display the cluster health state.
Console.WriteLine("Cluster Health:");
Console.WriteLine(" Aggregated Health State: " + clusterHealth.AggregatedHealthState);
Console.WriteLine();
// Display the application health states on the cluster.
Console.WriteLine(" Application Health States:");
IList<ApplicationHealthState> applicationHealthStateList = clusterHealth.ApplicationHealthStates;
foreach(ApplicationHealthState applicationHealthState in applicationHealthStateList)
{
Console.WriteLine(" Application {0}: {1}", applicationHealthState.ApplicationName, applicationHealthState.AggregatedHealthState);
}
// Display Node Health States on the cluster.
Console.WriteLine(" Node Health States:");
IList<NodeHealthState> nodeHealthStateList = clusterHealth.NodeHealthStates;
foreach (NodeHealthState nodeHealthState in nodeHealthStateList)
{
Console.WriteLine(" Node Name: " + nodeHealthState.NodeName);
Console.WriteLine(" Aggregated Health State: " + nodeHealthState.AggregatedHealthState);
}
// Display Health Events.
Console.WriteLine(" Health Events:");
IList<HealthEvent> healthEventList = clusterHealth.HealthEvents;
foreach(HealthEvent healthEvent in healthEventList)
{
Console.WriteLine(" Health Event:");
Console.WriteLine(" Last Modified: " + healthEvent.LastModifiedUtcTimestamp);
Console.WriteLine(" Source UTC Timestamp: " + healthEvent.SourceUtcTimestamp);
Console.WriteLine(" Is Expired: " + healthEvent.IsExpired);
Console.WriteLine(" Health Information:");
Console.WriteLine(" Description: " + healthEvent.HealthInformation.Description);
Console.WriteLine(" Source ID: " + healthEvent.HealthInformation.SourceId);
Console.WriteLine(" Health State: " + healthEvent.HealthInformation.HealthState);
Console.WriteLine(" Property: " + healthEvent.HealthInformation.Property);
Console.WriteLine(" Remove When Expired: " + healthEvent.HealthInformation.RemoveWhenExpired);
Console.WriteLine(" Sequence Number: " + healthEvent.HealthInformation.SequenceNumber);
Console.WriteLine(" Time to Live: " + healthEvent.HealthInformation.TimeToLive);
}
Console.WriteLine(" Unhealthy Evaluations:");
IList<HealthEvaluation> healthEvaluationList = clusterHealth.UnhealthyEvaluations;
foreach(HealthEvaluation healthEvaluation in healthEvaluationList)
{
Console.WriteLine(" Kind: " + healthEvaluation.Kind);
Console.WriteLine(" Aggregated Health State: " + healthEvaluation.AggregatedHealthState);
Console.WriteLine(" Description: " + healthEvaluation.Description);
}
return true;
}
适用于
GetClusterHealthAsync(ClusterHealthPolicy)
异步获取 Service Fabric 群集的运行状况,并使用指定的策略对其进行评估。
public System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth> GetClusterHealthAsync (System.Fabric.Health.ClusterHealthPolicy healthPolicy);
member this.GetClusterHealthAsync : System.Fabric.Health.ClusterHealthPolicy -> System.Threading.Tasks.Task<System.Fabric.Health.ClusterHealth>
Public Function GetClusterHealthAsync (healthPolicy As ClusterHealthPolicy) As Task(Of ClusterHealth)
参数
- healthPolicy
- ClusterHealthPolicy
用于评估群集运行状况的群集运行状况策略。
返回
Service Fabric 群集的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
CommunicationError 当通信错误导致操作失败时,返回 。