你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
FabricClient.HealthClient.GetDeployedApplicationHealthAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
GetDeployedApplicationHealthAsync(DeployedApplicationHealthQueryDescription) |
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(Uri, String) |
异步获取指定节点上已部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(DeployedApplicationHealthQueryDescription, TimeSpan, CancellationToken) |
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(Uri, String, ApplicationHealthPolicy) |
异步获取指定节点上已部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(Uri, String, TimeSpan, CancellationToken) |
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(Uri, String, ApplicationHealthPolicy, TimeSpan, CancellationToken) |
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。 |
GetDeployedApplicationHealthAsync(DeployedApplicationHealthQueryDescription)
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (System.Fabric.Description.DeployedApplicationHealthQueryDescription queryDescription);
member this.GetDeployedApplicationHealthAsync : System.Fabric.Description.DeployedApplicationHealthQueryDescription -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (queryDescription As DeployedApplicationHealthQueryDescription) As Task(Of DeployedApplicationHealth)
参数
- queryDescription
- DeployedApplicationHealthQueryDescription
查询说明。
返回
表示异步操作的任务。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 ApplicationName 不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetDeployedApplicationHealthAsync(Uri, String)
异步获取指定节点上已部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (Uri applicationName, string nodeName);
member this.GetDeployedApplicationHealthAsync : Uri * string -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (applicationName As Uri, nodeName As String) As Task(Of DeployedApplicationHealth)
参数
- applicationName
- Uri
Service Fabric 应用程序的 URI。
- nodeName
- String
部署 Service Fabric 应用程序的节点名称。
返回
已部署的 Service Fabric 应用程序的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。
注解
以下示例获取已部署应用程序的运行状况。
public static bool GetDeployedApplicationsHealth(string clusterConnection)
{
//DeployedApplicationHealth deployedApplicationHealth;
//ApplicationHealth applicationHealth;
Uri applicationName = new Uri("fabric:/myapp/todo");
// Connect to the cluster.
FabricClient fabricClient = new FabricClient(clusterConnection);
Console.WriteLine("Deployed Application Health:");
try
{
// Determine the nodes where the application has been deployed.
ApplicationHealth applicationHealth = fabricClient.HealthManager.GetApplicationHealthAsync(applicationName).Result;
// Get the deployed application health for each node.
IList<DeployedApplicationHealthState> deployedAppHealthStateList = applicationHealth.DeployedApplicationHealthStates;
foreach (DeployedApplicationHealthState deployedAppHealthState in deployedAppHealthStateList)
{
DeployedApplicationHealth deployedApplicationHealth = fabricClient.HealthManager.GetDeployedApplicationHealthAsync(applicationName,
deployedAppHealthState.NodeName).Result;
// Display the deployed application health information for each node.
Console.WriteLine(" Application {0}: {1}", deployedApplicationHealth.ApplicationName, deployedApplicationHealth.AggregatedHealthState);
Console.WriteLine(" Node Name: " + deployedApplicationHealth.NodeName);
// List the deployed application health states.
Console.WriteLine(" Deployed applications:");
IList<DeployedServicePackageHealthState> deployedSPHealthStateList = deployedApplicationHealth.DeployedServicePackageHealthStates;
foreach (DeployedServicePackageHealthState deployedSPHealthState in deployedSPHealthStateList)
{
Console.WriteLine(" Application: " + deployedSPHealthState.ApplicationName);
Console.WriteLine(" Aggregated Health State: " + deployedSPHealthState.AggregatedHealthState);
Console.WriteLine(" Node Name: " + deployedSPHealthState.NodeName);
Console.WriteLine(" Service Manifest Name: " + deployedSPHealthState.ServiceManifestName);
}
// List the health events.
Console.WriteLine(" Health Events:");
IList<HealthEvent> healthEvents = deployedApplicationHealth.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 = deployedApplicationHealth.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;
}
适用于
GetDeployedApplicationHealthAsync(DeployedApplicationHealthQueryDescription, TimeSpan, CancellationToken)
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (System.Fabric.Description.DeployedApplicationHealthQueryDescription queryDescription, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetDeployedApplicationHealthAsync : System.Fabric.Description.DeployedApplicationHealthQueryDescription * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (queryDescription As DeployedApplicationHealthQueryDescription, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of DeployedApplicationHealth)
参数
- queryDescription
- DeployedApplicationHealthQueryDescription
查询说明。
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
表示异步操作的任务。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 ApplicationName 不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetDeployedApplicationHealthAsync(Uri, String, ApplicationHealthPolicy)
异步获取指定节点上已部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (Uri applicationName, string nodeName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy);
member this.GetDeployedApplicationHealthAsync : Uri * string * System.Fabric.Health.ApplicationHealthPolicy -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (applicationName As Uri, nodeName As String, healthPolicy As ApplicationHealthPolicy) As Task(Of DeployedApplicationHealth)
参数
- applicationName
- Uri
Service Fabric 应用程序的 URI。
- nodeName
- String
部署 Service Fabric 应用程序的节点名称。
- healthPolicy
- ApplicationHealthPolicy
用于评估实体运行状况的应用程序运行状况策略。
返回
已部署的 Service Fabric 应用程序的运行状况。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetDeployedApplicationHealthAsync(Uri, String, TimeSpan, CancellationToken)
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (Uri applicationName, string nodeName, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetDeployedApplicationHealthAsync : Uri * string * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (applicationName As Uri, nodeName As String, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of DeployedApplicationHealth)
参数
- applicationName
- Uri
Service Fabric 应用程序的 URI。
- nodeName
- String
部署 Service Fabric 应用程序的节点名称。
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
表示异步操作的任务。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。
适用于
GetDeployedApplicationHealthAsync(Uri, String, ApplicationHealthPolicy, TimeSpan, CancellationToken)
使用指定的超时和取消令牌异步获取指定节点上部署的 Service Fabric 应用程序的运行状况。
public System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth> GetDeployedApplicationHealthAsync (Uri applicationName, string nodeName, System.Fabric.Health.ApplicationHealthPolicy healthPolicy, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.GetDeployedApplicationHealthAsync : Uri * string * System.Fabric.Health.ApplicationHealthPolicy * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Fabric.Health.DeployedApplicationHealth>
Public Function GetDeployedApplicationHealthAsync (applicationName As Uri, nodeName As String, healthPolicy As ApplicationHealthPolicy, timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of DeployedApplicationHealth)
参数
- applicationName
- Uri
Service Fabric 应用程序的 URI。
- nodeName
- String
部署 Service Fabric 应用程序的节点名称。
- healthPolicy
- ApplicationHealthPolicy
用于评估实体运行状况的应用程序运行状况策略。
- timeout
- TimeSpan
Service Fabric 在返回 TimeoutException之前允许此操作继续的最长时间。
- cancellationToken
- CancellationToken
操作正在观察的可选取消标记。 它可用于发送应取消操作的通知。 请注意,取消是建议性的,即使取消了操作,该操作仍可能已完成。
返回
表示异步操作的任务。
例外
对象 FabricClient 处于关闭状态。 释放正在使用的对象 FabricClient 并实例化新 FabricClient 对象。
将 null 引用传递给不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时,返回 。