FabricClient.HealthClient.GetDeployedServicePackageHealthAsync メソッド

定義

オーバーロード

GetDeployedServicePackageHealthAsync(Uri, String, String, ApplicationHealthPolicy, TimeSpan, CancellationToken)

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

GetDeployedServicePackageHealthAsync(Uri, String, String, ApplicationHealthPolicy)

デプロイされた Service Fabric サービス パッケージの正常性を非同期的に取得します。

GetDeployedServicePackageHealthAsync(Uri, String, String, TimeSpan, CancellationToken)

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

GetDeployedServicePackageHealthAsync(DeployedServicePackageHealthQueryDescription, TimeSpan, CancellationToken)

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

GetDeployedServicePackageHealthAsync(Uri, String, String)

デプロイされた Service Fabric サービス パッケージの正常性を非同期的に取得します。

GetDeployedServicePackageHealthAsync(DeployedServicePackageHealthQueryDescription)

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

GetDeployedServicePackageHealthAsync(Uri, String, String, ApplicationHealthPolicy, TimeSpan, CancellationToken)

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

public System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth> GetDeployedServicePackageHealthAsync (Uri applicationName, string serviceManifestName, string nodeName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetDeployedServicePackageHealthAsync : Uri * string * string * System.Fabric.Health.ApplicationHealthPolicy * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth>
Public Function GetDeployedServicePackageHealthAsync (applicationName As Uri, serviceManifestName As String, nodeName As String, healthPolicy As ApplicationHealthPolicy, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of DeployedServicePackageHealth)

パラメーター

applicationName
Uri

Service Fabric アプリケーションの URI。

serviceManifestName
String

この Service Fabric サービスのサービス マニフェスト ファイルの名前。

nodeName
String

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 名でない場合 applicationName は が返されます。

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

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

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

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

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

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

適用対象

GetDeployedServicePackageHealthAsync(Uri, String, String, ApplicationHealthPolicy)

デプロイされた Service Fabric サービス パッケージの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth> GetDeployedServicePackageHealthAsync (Uri applicationName, string serviceManifestName, string nodeName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy);
member this.GetDeployedServicePackageHealthAsync : Uri * string * string * System.Fabric.Health.ApplicationHealthPolicy -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth>
Public Function GetDeployedServicePackageHealthAsync (applicationName As Uri, serviceManifestName As String, nodeName As String, healthPolicy As ApplicationHealthPolicy) As Task(Of DeployedServicePackageHealth)

パラメーター

applicationName
Uri

Service Fabric アプリケーションの URI。

serviceManifestName
String

この Service Fabric サービスのサービス マニフェスト ファイルの名前。

nodeName
String

Service Fabric サービスがデプロイされたノードの名前。

healthPolicy
ApplicationHealthPolicy

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

戻り値

デプロイされた Service Fabric サービス パッケージの正常性。

例外

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

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

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

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

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

OperationTimedOut は、操作の完了に指定した時間を超えると返されます。

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

FabricHealthEntityNotFound.

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

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

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

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

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

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

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

適用対象

GetDeployedServicePackageHealthAsync(Uri, String, String, TimeSpan, CancellationToken)

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

public System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth> GetDeployedServicePackageHealthAsync (Uri applicationName, string serviceManifestName, string nodeName, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetDeployedServicePackageHealthAsync : Uri * string * string * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth>
Public Function GetDeployedServicePackageHealthAsync (applicationName As Uri, serviceManifestName As String, nodeName As String, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of DeployedServicePackageHealth)

パラメーター

applicationName
Uri

Service Fabric アプリケーションの URI。

serviceManifestName
String

この Service Fabric サービスのサービス マニフェスト ファイルの名前。

nodeName
String

Service Fabric サービスがデプロイされたノードの名前。

timeout
TimeSpan

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

cancellationToken
CancellationToken

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

戻り値

デプロイされた Service Fabric サービス パッケージの正常性。

例外

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

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

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

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

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

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

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

FabricHealthEntityNotFound.

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

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

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

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

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

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

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

適用対象

GetDeployedServicePackageHealthAsync(DeployedServicePackageHealthQueryDescription, TimeSpan, CancellationToken)

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

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

パラメーター

queryDescription
DeployedServicePackageHealthQueryDescription

クエリの説明。

timeout
TimeSpan

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

cancellationToken
CancellationToken

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

戻り値

デプロイされた Service Fabric サービス パッケージの正常性。

例外

一般的な FabricClient エラーの処理に関するページを参照してください https://docs.microsoft.com/azure/service-fabric/service-fabric-errors-and-exceptions

一般的な FabricClient エラーの処理に関するページを参照してください https://docs.microsoft.com/azure/service-fabric/service-fabric-errors-and-exceptions

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

FabricHealthEntityNotFound.

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

一般的な FabricClient エラーの処理についても https://docs.microsoft.com/azure/service-fabric/service-fabric-errors-and-exceptions 参照してください。

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

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

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

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

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

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

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

適用対象

GetDeployedServicePackageHealthAsync(Uri, String, String)

デプロイされた Service Fabric サービス パッケージの正常性を非同期的に取得します。

public System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth> GetDeployedServicePackageHealthAsync (Uri applicationName, string serviceManifestName, string nodeName);
member this.GetDeployedServicePackageHealthAsync : Uri * string * string -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth>
Public Function GetDeployedServicePackageHealthAsync (applicationName As Uri, serviceManifestName As String, nodeName As String) As Task(Of DeployedServicePackageHealth)

パラメーター

applicationName
Uri

Service Fabric アプリケーションの URI。

serviceManifestName
String

この Service Fabric サービスのサービス マニフェスト ファイルの名前。

nodeName
String

Service Fabric サービスがデプロイされたノードの名前。

戻り値

デプロイされた Service Fabric サービス パッケージの正常性。

例外

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

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

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

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

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

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

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

FabricHealthEntityNotFound.

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

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

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

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

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

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

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

注釈

次の例では、デプロイされたサービス パッケージの正常性を取得します。

public static bool GetDeployedServicePackageHealth(string clusterConnection)
            {
                DeployedApplicationHealth deployedApplicationHealth;
                DeployedServicePackageHealth deployedServicePackageHealth;
                ApplicationHealth applicationHealth;
                Uri applicationName = new Uri("fabric:/myapp/todo");

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

                Console.WriteLine("Deployed Service Package Health:");

                try
                {
                    // Determine the nodes where the application has been deployed.
                    applicationHealth = fabricClient.HealthManager.GetApplicationHealthAsync(applicationName).Result;

                    // Get the deployed service package health for each node.
                    IList<DeployedApplicationHealthState> deployedApplicationHealthStateList = applicationHealth.DeployedApplicationHealthStates;
                    foreach (DeployedApplicationHealthState deployedApplicationHealthState in deployedApplicationHealthStateList)
                    {
            // Get the deployed application health, which contains the service manifest name and 
            // the names of the nodes where the service has been deployed.
            deployedApplicationHealth = fabricClient.HealthManager.GetDeployedApplicationHealthAsync(applicationName,
                deployedApplicationHealthState.NodeName).Result;

            // Return if empty.
            if (deployedApplicationHealth.DeployedServicePackageHealthStates.Count == 0)
                return false;

            // Get the deployed service package health.
            deployedServicePackageHealth = fabricClient.HealthManager.GetDeployedServicePackageHealthAsync(applicationName,
                deployedApplicationHealth.DeployedServicePackageHealthStates[0].ServiceManifestName, 
                deployedApplicationHealthState.NodeName).Result;

            // Display the deployed service package health information.
            Console.WriteLine("  Application Name: " + deployedServicePackageHealth.ApplicationName);
            Console.WriteLine("    Node Name: " + deployedServicePackageHealth.NodeName);
            Console.WriteLine("    Aggregated Health State: " + deployedServicePackageHealth.AggregatedHealthState);
            Console.WriteLine("    Service Manifest Name: " + deployedServicePackageHealth.ServiceManifestName);

            // List the health events.
            Console.WriteLine("    Health Events:");
            IList<HealthEvent> healthEvents = deployedServicePackageHealth.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 = deployedServicePackageHealth.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();
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine("Error: " + e.Message);

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

                    return false;
                }
                return true;
            }

適用対象

GetDeployedServicePackageHealthAsync(DeployedServicePackageHealthQueryDescription)

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

public System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth> GetDeployedServicePackageHealthAsync (System.Fabric.Description.DeployedServicePackageHealthQueryDescription queryDescription);
member this.GetDeployedServicePackageHealthAsync : System.Fabric.Description.DeployedServicePackageHealthQueryDescription -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedServicePackageHealth>
Public Function GetDeployedServicePackageHealthAsync (queryDescription As DeployedServicePackageHealthQueryDescription) As Task(Of DeployedServicePackageHealth)

パラメーター

queryDescription
DeployedServicePackageHealthQueryDescription

クエリの説明。

戻り値

デプロイされた Service Fabric サービス パッケージの正常性。

例外

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

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

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

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

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

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

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

FabricHealthEntityNotFound.

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

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

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

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

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

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

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

適用対象