你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

FabricClient.HealthClient.GetPartitionHealthAsync 方法

定义

重载

GetPartitionHealthAsync(Guid, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(PartitionHealthQueryDescription, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(Guid, ApplicationHealthPolicy, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(Guid)

异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(PartitionHealthQueryDescription)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(Guid, ApplicationHealthPolicy)

异步获取 Service Fabric 分区的运行状况。

GetPartitionHealthAsync(Guid, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (Guid partitionId, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetPartitionHealthAsync : Guid * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (partitionId As Guid, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of PartitionHealth)

参数

partitionId
Guid

Service Fabric 分区的 ID。

timeout
TimeSpan

Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。

cancellationToken
CancellationToken

操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成所需时间超过用户提供 timeout 的时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

适用于

GetPartitionHealthAsync(PartitionHealthQueryDescription, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (System.Fabric.Description.PartitionHealthQueryDescription queryDescription, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetPartitionHealthAsync : System.Fabric.Description.PartitionHealthQueryDescription * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (queryDescription As PartitionHealthQueryDescription, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of PartitionHealth)

参数

queryDescription
PartitionHealthQueryDescription

查询说明。

timeout
TimeSpan

Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。

cancellationToken
CancellationToken

操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成所需时间超过用户提供 timeout 的时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

适用于

GetPartitionHealthAsync(Guid, ApplicationHealthPolicy, TimeSpan, CancellationToken)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (Guid partitionId, System.Fabric.Health.ApplicationHealthPolicy healthPolicy, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetPartitionHealthAsync : Guid * System.Fabric.Health.ApplicationHealthPolicy * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (partitionId As Guid, healthPolicy As ApplicationHealthPolicy, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of PartitionHealth)

参数

partitionId
Guid

Service Fabric 分区的 ID。

healthPolicy
ApplicationHealthPolicy

用于评估实体运行状况的应用程序运行状况策略。

timeout
TimeSpan

Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。

cancellationToken
CancellationToken

操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成所需时间超过用户提供 timeout 的时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

适用于

GetPartitionHealthAsync(Guid)

异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (Guid partitionId);
member this.GetPartitionHealthAsync : Guid -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (partitionId As Guid) As Task(Of PartitionHealth)

参数

partitionId
Guid

Service Fabric 分区的 ID。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成时间超过指定时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

注解

以下示例获取分区的运行状况。

public static bool GetPartitionHealth(string clusterConnection)
            {
                PartitionHealth partitionHealth;

                // Connect to the cluster.
                FabricClient fabricClient = new FabricClient(clusterConnection);

                // Get the partition health.
                try
                {
                    partitionHealth = fabricClient.HealthManager.GetPartitionHealthAsync(new Guid("a7206315-e53b-4d05-b59c-e210caa28893")).Result;
                }
                catch (Exception e)
                {
                    Console.WriteLine("Error: " + e.Message);

                    if (e.InnerException != null)
                        Console.WriteLine("  Inner Exception: " + e.InnerException.Message);

                    return false;
                }

                // Display the partition health information.
                Console.WriteLine("Partition Health:");
                Console.WriteLine("  Partition ID: " + partitionHealth.PartitionId);
                Console.WriteLine("    Aggregated Health State: " + partitionHealth.AggregatedHealthState);

                // List the health events.
                Console.WriteLine("    Health Events:");
                IList<HealthEvent> healthEvents = partitionHealth.HealthEvents;
                foreach (HealthEvent healthEvent in healthEvents)
                {
                    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);
                }

                // List the replica health states.
                Console.WriteLine("    Replica Health States:");
                IList<ReplicaHealthState> replicaHealthStates = partitionHealth.ReplicaHealthStates;
                foreach (ReplicaHealthState replicaHealthState in replicaHealthStates)
                {
                    Console.WriteLine("      ID: " + replicaHealthState.Id);
                    Console.WriteLine("        Kind: " + replicaHealthState.Kind);
                    Console.WriteLine("        Aggregated Health State: " + replicaHealthState.AggregatedHealthState);
                    Console.WriteLine("        Partition ID: " + replicaHealthState.PartitionId);
                }

                // List the unhealthy evaluations.
                Console.WriteLine("    Unhealthy Evaluations:");
                IList<HealthEvaluation> healthEvaluationList = partitionHealth.UnhealthyEvaluations;
                foreach (HealthEvaluation healthEvaluation in healthEvaluationList)
                {
                    Console.WriteLine("      Kind: " + healthEvaluation.Kind);
                    Console.WriteLine("        Aggregated Health State: " + healthEvaluation.AggregatedHealthState);
                    Console.WriteLine("        Description: " + healthEvaluation.Description);
                }

                Console.WriteLine();
                return true;
            }

适用于

GetPartitionHealthAsync(PartitionHealthQueryDescription)

使用指定的超时和取消令牌异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (System.Fabric.Description.PartitionHealthQueryDescription queryDescription);
member this.GetPartitionHealthAsync : System.Fabric.Description.PartitionHealthQueryDescription -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (queryDescription As PartitionHealthQueryDescription) As Task(Of PartitionHealth)

参数

queryDescription
PartitionHealthQueryDescription

查询说明。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成时间超过指定时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

适用于

GetPartitionHealthAsync(Guid, ApplicationHealthPolicy)

异步获取 Service Fabric 分区的运行状况。

public System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth> GetPartitionHealthAsync (Guid partitionId, System.Fabric.Health.ApplicationHealthPolicy healthPolicy);
member this.GetPartitionHealthAsync : Guid * System.Fabric.Health.ApplicationHealthPolicy -> System.Threading.Tasks.Task<System.Fabric.Health.PartitionHealth>
Public Function GetPartitionHealthAsync (partitionId As Guid, healthPolicy As ApplicationHealthPolicy) As Task(Of PartitionHealth)

参数

partitionId
Guid

Service Fabric 分区的 ID。

healthPolicy
ApplicationHealthPolicy

用于评估实体运行状况的应用程序运行状况策略。

返回

Service Fabric 分区的运行状况。

例外

对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。

将 null 引用传递给不接受它作为有效参数的方法时返回。

由以下原因之一引起:

当一个或多个参数无效时,将返回E_INVALIDARG。

由以下原因之一引起:

OperationTimedOut 当操作完成时间超过指定时间时,将返回 。

由以下原因之一引起:

ServiceTooBusy 当服务太忙而无法处理操作时,将返回 。

由以下原因之一引起:

当此操作的访问检查失败时,将返回E_ACCESSDENIED。

适用于