你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
FabricClient.HealthClient.GetDeployedServicePackageHealthAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
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 对象。
当空引用传递到不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时返回 。
适用于
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 对象。
当空引用传递到不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时返回 。
适用于
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 对象。
当空引用传递到不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时返回 。
适用于
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 。
由以下原因之一引起:
InvalidNameUri 如果 ApplicationName 不是有效的 Service Fabric 名称,则返回 。
另 https://docs.microsoft.com/azure/service-fabric/service-fabric-errors-and-exceptions 请参阅处理常见 FabricClient 故障。
当空引用传递到不接受它作为有效参数的方法时返回。
适用于
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 对象。
当空引用传递到不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 applicationName
不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时返回 。
注解
以下示例获取已部署服务包的运行状况。
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 对象。
当空引用传递到不接受它作为有效参数的方法时返回。
由以下原因之一引起:
InvalidNameUri 如果 ApplicationName 不是有效的 Service Fabric 名称,则返回 。
CommunicationError 当通信错误导致操作失败时返回 。