次の方法で共有


FabricClient.HealthClient.GetServiceHealthAsync メソッド

定義

オーバーロード

GetServiceHealthAsync(ServiceHealthQueryDescription)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(Uri)

Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

GetServiceHealthAsync(ServiceHealthQueryDescription)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth> GetServiceHealthAsync (System.Fabric.Description.ServiceHealthQueryDescription queryDescription);
member this.GetServiceHealthAsync : System.Fabric.Description.ServiceHealthQueryDescription -> System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth>
Public Function GetServiceHealthAsync (queryDescription As ServiceHealthQueryDescription) As Task(Of ServiceHealth)

パラメーター

queryDescription
ServiceHealthQueryDescription

クエリの説明。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されるときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作の完了に指定した時間以上かかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 ServiceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗した場合に返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理しきれなすぎる場合に返されます。

次のいずれかが原因で発生します。

この操作に対してアクセスチェックが失敗すると、E_ACCESSDENIEDが返されます。

適用対象

GetServiceHealthAsync(Uri)

Service Fabric サービスの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth> GetServiceHealthAsync (Uri serviceName);
member this.GetServiceHealthAsync : Uri -> System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth>
Public Function GetServiceHealthAsync (serviceName As Uri) As Task(Of ServiceHealth)

パラメーター

serviceName
Uri

Service Fabric サービスの名前。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されるときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作の完了に指定した時間以上かかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 serviceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗した場合に返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理しきれなすぎる場合に返されます。

次のいずれかが原因で発生します。

この操作に対してアクセスチェックが失敗すると、E_ACCESSDENIEDが返されます。

注釈

次の例では、サービスの正常性を取得します。

public static bool GetServiceHealth(string clusterConnection)
            {
                ServiceHealth serviceHealth;
                Uri serviceName = new Uri("fabric:/myapp/todo/svc1");

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

                // Get the service health.
                try
                {
                    serviceHealth = fabricClient.HealthManager.GetServiceHealthAsync(serviceName).Result;
                }
                catch (Exception e)
                {
                    Console.WriteLine("Error: " + e.Message);

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

                    return false;
                }

                Console.WriteLine("Service Health:");
                Console.WriteLine("  Service {0}: {1}", serviceHealth.ServiceName, serviceHealth.AggregatedHealthState);

                // List the health states.
                Console.WriteLine("    Partition Health States:");
                IList<PartitionHealthState> partitionHealthStates = serviceHealth.PartitionHealthStates;
                foreach (PartitionHealthState partitionHealthState in partitionHealthStates)
                {
                    Console.WriteLine("      Aggregated Health State: " + partitionHealthState.AggregatedHealthState);
                    Console.WriteLine("      Partition ID: " + partitionHealthState.PartitionId);
                }

                // List the health events.
                Console.WriteLine("    Health Events:");
                IList<HealthEvent> healthEvents = serviceHealth.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 unhealthy evaluations.
                Console.WriteLine("    Unhealthy Evaluations:");
                IList<HealthEvaluation> healthEvaluationList = serviceHealth.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;
            }

適用対象

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Service Fabric サービスの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth> GetServiceHealthAsync (Uri serviceName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy);
member this.GetServiceHealthAsync : Uri * System.Fabric.Health.ApplicationHealthPolicy -> System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth>
Public Function GetServiceHealthAsync (serviceName As Uri, healthPolicy As ApplicationHealthPolicy) As Task(Of ServiceHealth)

パラメーター

serviceName
Uri

Service Fabric サービスの名前。

healthPolicy
ApplicationHealthPolicy

サービス正常性の評価に使用されるアプリケーション正常性ポリシー。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されるときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作の完了に指定した時間以上かかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 serviceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗した場合に返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理しきれなすぎる場合に返されます。

次のいずれかが原因で発生します。

この操作に対してアクセスチェックが失敗すると、E_ACCESSDENIEDが返されます。

適用対象

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

指定したタイムアウトおよびキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

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

パラメーター

queryDescription
ServiceHealthQueryDescription

クエリの説明。

timeout
TimeSpan

Service Fabric が を返す TimeoutException前にこの操作を続行できる最大時間。

cancellationToken
CancellationToken

操作が監視している省略可能なキャンセル トークン。 操作を取り消す必要があることを示す通知を送信するために使用できます。 取り消しはアドバイザリであり、取り消された場合でも操作が完了する可能性があることに注意してください。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されるときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作が完了するために指定 timeout されたユーザーよりも多くかかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 ServiceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗した場合に返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理しきれなすぎる場合に返されます。

次のいずれかが原因で発生します。

この操作に対してアクセスチェックが失敗すると、E_ACCESSDENIEDが返されます。

適用対象

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

指定されたタイムアウトとキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth> GetServiceHealthAsync (Uri serviceName, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetServiceHealthAsync : Uri * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth>
Public Function GetServiceHealthAsync (serviceName As Uri, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of ServiceHealth)

パラメーター

serviceName
Uri

Service Fabric サービスの名前。

timeout
TimeSpan

Service Fabric が を返す TimeoutException前にこの操作を続行できる最大時間。

cancellationToken
CancellationToken

操作が監視している省略可能なキャンセル トークン。 操作を取り消す必要があることを示す通知を送信するために使用できます。 取り消しはアドバイザリであり、取り消された場合でも操作が完了する可能性があることに注意してください。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されるときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作が完了するために指定 timeout されたユーザーよりも多くかかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 serviceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗した場合に返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理しきれなすぎる場合に返されます。

次のいずれかが原因で発生します。

この操作に対してアクセスチェックが失敗すると、E_ACCESSDENIEDが返されます。

適用対象

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

指定されたタイムアウトとキャンセル トークンを使用して、Service Fabric サービスの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth> GetServiceHealthAsync (Uri serviceName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetServiceHealthAsync : Uri * System.Fabric.Health.ApplicationHealthPolicy * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.ServiceHealth>
Public Function GetServiceHealthAsync (serviceName As Uri, healthPolicy As ApplicationHealthPolicy, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of ServiceHealth)

パラメーター

serviceName
Uri

Service Fabric サービスの名前。

healthPolicy
ApplicationHealthPolicy

エンティティの正常性を評価するために使用されるアプリケーション正常性ポリシー。

timeout
TimeSpan

Service Fabric が を返す TimeoutException前にこの操作を続行できる最大時間。

cancellationToken
CancellationToken

操作が監視している省略可能なキャンセル トークン。 操作を取り消す必要があることを示す通知を送信するために使用できます。 取り消しはアドバイザリであり、取り消された場合でも操作が完了する可能性があることに注意してください。

戻り値

Service Fabric サービスの正常性。

例外

オブジェクトは FabricClient 閉じた状態です。 使用しているオブジェクトを FabricClient 破棄し、新しい FabricClient オブジェクトをインスタンス化します。

null 参照が有効な引数として受け入れられないメソッドに渡されたときに返されます。

次のいずれかが原因で発生します。

E_INVALIDARGは、1 つ以上の引数が無効な場合に返されます。

次のいずれかが原因で発生します。

OperationTimedOut は、操作が完了するために指定 timeout されたユーザーを超える時間がかかる場合に返されます。

次のいずれかが原因で発生します。

FabricHealthEntityNotFound.

InvalidNameUri が有効な Service Fabric 名でない場合 serviceName は が返されます。

CommunicationError は、通信エラーが原因で操作が失敗したときに返されます。

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

次のいずれかが原因で発生します。

ServiceTooBusy は、サービスがビジー状態で操作を処理できる場合に返されます。

次のいずれかが原因で発生します。

E_ACCESSDENIEDは、この操作に対するアクセス チェックが失敗したときに返されます。

適用対象