Compartir a través de


FabricClient.HealthClient.GetServiceHealthAsync Método

Definición

Sobrecargas

GetServiceHealthAsync(ServiceHealthQueryDescription)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación especificados.

GetServiceHealthAsync(Uri)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric.

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric.

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación especificados.

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación especificados.

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación especificados.

GetServiceHealthAsync(ServiceHealthQueryDescription)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación 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

Descripción de la consulta.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el tiempo especificado en completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando ServiceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Se aplica a

GetServiceHealthAsync(Uri)

Obtiene de forma asincrónica el estado de un servicio de 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

Nombre del servicio de Service Fabric.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el tiempo especificado en completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando serviceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Comentarios

En el ejemplo siguiente se obtiene el estado de un servicio.

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

Se aplica a

GetServiceHealthAsync(Uri, ApplicationHealthPolicy)

Obtiene de forma asincrónica el estado de un servicio de 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

Nombre del servicio de Service Fabric.

healthPolicy
ApplicationHealthPolicy

Directiva de estado de la aplicación que se usa para evaluar el estado del servicio.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el tiempo especificado en completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando serviceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Se aplica a

GetServiceHealthAsync(ServiceHealthQueryDescription, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación 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

Descripción de la consulta.

timeout
TimeSpan

La cantidad máxima de tiempo que Service Fabric permitirá que esta operación continúe antes de devolver .TimeoutException

cancellationToken
CancellationToken

Token de cancelación opcional que observa la operación. Se puede usar para enviar una notificación de que se debe cancelar la operación. Tenga en cuenta que la cancelación es un aviso y que la operación todavía se puede completar aunque se cancele.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el usuario proporcionado timeout para completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando ServiceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Se aplica a

GetServiceHealthAsync(Uri, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación 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

Nombre del servicio de Service Fabric.

timeout
TimeSpan

La cantidad máxima de tiempo que Service Fabric permitirá que esta operación continúe antes de devolver .TimeoutException

cancellationToken
CancellationToken

Token de cancelación opcional que observa la operación. Se puede usar para enviar una notificación de que se debe cancelar la operación. Tenga en cuenta que la cancelación es un aviso y que la operación todavía se puede completar aunque se cancele.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el usuario proporcionado timeout para completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando serviceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Se aplica a

GetServiceHealthAsync(Uri, ApplicationHealthPolicy, TimeSpan, CancellationToken)

Obtiene de forma asincrónica el estado de un servicio de Service Fabric mediante el tiempo de espera y el token de cancelación 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

Nombre del servicio de Service Fabric.

healthPolicy
ApplicationHealthPolicy

Directiva de mantenimiento de la aplicación que se usa para evaluar el estado de la entidad.

timeout
TimeSpan

La cantidad máxima de tiempo que Service Fabric permitirá que esta operación continúe antes de devolver .TimeoutException

cancellationToken
CancellationToken

Token de cancelación opcional que observa la operación. Se puede usar para enviar una notificación de que se debe cancelar la operación. Tenga en cuenta que la cancelación es un aviso y que la operación todavía se puede completar aunque se cancele.

Devoluciones

Estado de un servicio de Service Fabric.

Excepciones

El FabricClient objeto está en estado cerrado. Elimine el FabricClient objeto que está usando y cree una instancia de un nuevo FabricClient objeto.

Se devuelve cuando se pasa una referencia nula a un método que no lo acepta como argumento válido.

Causado por una de las siguientes causas:

E_INVALIDARG se devuelve cuando uno o varios argumentos no son válidos.

Causado por una de las siguientes causas:

OperationTimedOut se devuelve cuando la operación tarda más que el usuario proporcionado timeout para completarse.

Causado por una de las siguientes causas:

FabricHealthEntityNotFound.

InvalidNameUri se devuelve cuando serviceName no es un nombre válido de Service Fabric.

CommunicationError se devuelve cuando un error de comunicación provocó un error en la operación.

InvalidCredentialType.

InvalidX509FindType.

InvalidX509StoreLocation.

InvalidX509StoreName.

InvalidX509Thumbprint.

InvalidProtectionLevel.

InvalidX509Store.

InvalidSubjectName.

InvalidAllowedCommonNameList.

Causado por una de las siguientes causas:

ServiceTooBusy se devuelve cuando el servicio está demasiado ocupado para procesar la operación.

Causado por una de las siguientes causas:

E_ACCESSDENIED se devuelve cuando se ha producido un error en la comprobación de acceso para esta operación.

Se aplica a