你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

报告服务运行状况

发送有关 Service Fabric 服务的运行状况报告。

报告指定的 Service Fabric 服务的运行状况。 该报告必须包含有关运行状况报告及其所报告属性的源的信息。 该报告将发送到 Service Fabric 网关服务,后者会将其转发到运行状况存储。 该报告可能被网关接受但被运行状况存储在执行额外的验证后拒绝。 例如,运行状况存储可能会由于无效的参数(如过时的序列号)而拒绝该报告。 若要查看报告是否已在运行状况存储中应用,请运行 GetServiceHealth 并检查报表显示在 HealthEvents 部分中。

请求

方法 请求 URI
POST /Services/{serviceId}/$/ReportHealth?api-version=6.0&Immediate={Immediate}&timeout={timeout}

参数

名称 类型 必须 位置
serviceId string 路径
api-version 字符串 查询
Immediate boolean 查询
timeout 整数 (int64) 查询
HealthInformation HealthInformation “是” Body

serviceId

类型:字符串
必需:是

服务的标识。 此 ID 通常是不带“fabric:”URI 方案的服务全名。 从版本 6.0 开始,分层名称以“~”字符隔开。 例如,如果服务名称为“fabric:/myapp/app1/svc1”,则 6.0 及更高版本中的服务标识为“myapp~app1~svc1”,在以前的版本中为“myapp/app1/svc1”。


api-version

类型:字符串
必需:是
默认

API 的版本。 此参数是必需的,其值必须为“6.0”。

Service Fabric REST API 版本基于引入或更改 API 的运行时版本。 Service Fabric 运行时支持多个版本的 API。 这是 API 的最新受支持版本。 如果传递的 API 版本较低,则返回的响应可能与本规范中所述的响应不同。

此外,运行时接受高于最新支持版本的任何版本,该版本一直高于当前版本的运行时。 因此,如果最新的 API 版本为 6.0,但如果运行时为 6.1,则为了更轻松地编写客户端,运行时将接受该 API 的版本 6.1。 但是,API 的行为将按照记录的 6.0 版本执行。


Immediate

类型:布尔值
必需:否
默认

一个用于指示是否应立即发送报告的标志。 运行状况报告将发送到 Service Fabric 网关应用程序,后者会将其转发到运行状况存储。 如果 Immediate 设置为 true,则报告将立即从 HTTP 网关发送至运行状况存储,而无论 HTTP 网关应用程序使用的 Fabric 客户端设置如何。 这对于应尽快发送的关键报告十分有用。 由于计时和其他情况,发送报告可能仍会失败,例如,在 HTTP 网关已关闭或消息无法到达网关的情况下。 如果 Immediate 设置为 false,则报告将基于来自 HTTP 网关的运行状况客户端设置发送。 因此,系统将根据 HealthReportSendInterval 配置对其进行批处理。 这是建议的设置,因为它可让运行状况客户端优化发往运行状况存储的运行状况报告消息以及运行状况报告处理。 默认情况下,报告不立即发送。


timeout

类型:整数 (int64)
必需:否
默认
InclusiveMaximum4294967295
InclusiveMinimum1

执行操作的服务器超时,以秒为单位。 此超时指定客户端可以等待请求的操作完成的持续时间。 此参数的默认值为 60 秒。


HealthInformation

类型HealthInformation
必需:是

描述运行状况报告的运行状况信息。 此信息需要存在于发送给运行状况管理器的所有运行状况报告中。

响应

HTTP 状态代码 说明 响应架构
200 (正常) 成功的操作将返回 200 状态代码。
所有其他状态代码 详细的错误响应。
FabricError