Partilhar via


FabricClient.HealthClient.GetServiceHealthAsync Método

Definição

Sobrecargas

GetServiceHealthAsync(ServiceHealthQueryDescription)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

GetServiceHealthAsync(Uri)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric.

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric.

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

GetServiceHealthAsync(ServiceHealthQueryDescription)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

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)

Parâmetros

queryDescription
ServiceHealthQueryDescription

A descrição da consulta.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o tempo especificado para ser concluída.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando ServiceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Aplica-se a

GetServiceHealthAsync(Uri)

Obtém de forma assíncrona a integridade de um serviço do 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)

Parâmetros

serviceName
Uri

O nome do serviço do Service Fabric.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o tempo especificado para ser concluída.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando serviceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Comentários

O exemplo a seguir obtém a integridade de um serviço.

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;
            }

Aplica-se a

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Obtém de forma assíncrona a integridade de um serviço do 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)

Parâmetros

serviceName
Uri

O nome do serviço do Service Fabric.

healthPolicy
ApplicationHealthPolicy

A política de integridade do aplicativo usada para avaliar a integridade do serviço.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o tempo especificado para ser concluída.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando serviceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Aplica-se a

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

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)

Parâmetros

queryDescription
ServiceHealthQueryDescription

A descrição da consulta.

timeout
TimeSpan

A quantidade máxima de tempo que o Service Fabric permitirá que essa operação continue antes de retornar um TimeoutException.

cancellationToken
CancellationToken

O token de cancelamento opcional que a operação está observando. Ele pode ser usado para enviar uma notificação de que a operação deve ser cancelada. Observe que o cancelamento é um aviso e que a operação ainda pode ser concluída mesmo se ela for cancelada.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o usuário fornecido timeout para concluir.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando ServiceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Aplica-se a

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

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)

Parâmetros

serviceName
Uri

O nome do serviço do Service Fabric.

timeout
TimeSpan

A quantidade máxima de tempo que o Service Fabric permitirá que essa operação continue antes de retornar um TimeoutException.

cancellationToken
CancellationToken

O token de cancelamento opcional que a operação está observando. Ele pode ser usado para enviar uma notificação de que a operação deve ser cancelada. Observe que o cancelamento é um aviso e que a operação ainda pode ser concluída mesmo se ela for cancelada.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o usuário fornecido timeout para concluir.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando serviceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Aplica-se a

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

Obtém de forma assíncrona a integridade de um serviço do Service Fabric usando o tempo limite e o token de cancelamento especificados.

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)

Parâmetros

serviceName
Uri

O nome do serviço do Service Fabric.

healthPolicy
ApplicationHealthPolicy

A política de integridade do aplicativo usada para avaliar a integridade da entidade.

timeout
TimeSpan

A quantidade máxima de tempo que o Service Fabric permitirá que essa operação continue antes de retornar um TimeoutException.

cancellationToken
CancellationToken

O token de cancelamento opcional que a operação está observando. Ele pode ser usado para enviar uma notificação de que a operação deve ser cancelada. Observe que o cancelamento é um aviso e que a operação ainda pode ser concluída mesmo se ela for cancelada.

Retornos

A integridade de um serviço do Service Fabric.

Exceções

O FabricClient objeto está em um estado fechado. Descarte o objeto que FabricClient você está usando e instancie um novo FabricClient objeto.

Retornado quando uma referência nula é passada para um método que não a aceita como um argumento válido.

Causado por um dos seguintes:

E_INVALIDARG é retornado quando um ou mais argumentos não são válidos.

Causado por um dos seguintes:

OperationTimedOut é retornado quando a operação leva mais do que o usuário fornecido timeout para concluir.

Causado por um dos seguintes:

FabricHealthEntityNotFound.

InvalidNameUri é retornado quando serviceName não é um nome válido do Service Fabric.

CommunicationError é retornado quando um erro de comunicação fez com que a operação falhasse.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por um dos seguintes:

ServiceTooBusy é retornado quando o serviço está muito ocupado para processar a operação.

Causado por um dos seguintes:

E_ACCESSDENIED é retornado quando a marcar de acesso falha nessa operação.

Aplica-se a