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

获取已部署的应用程序信息列表

获取部署在 Service Fabric 节点上的应用程序的列表。

获取部署在 Service Fabric 节点上的应用程序的列表。 除非显式按 ID 查询,否则结果不会包含有关已部署系统应用程序的信息 结果包括处于活动、正在激活和正在下载状态的已部署应用程序。 此查询要求节点名称对应于群集上的某个节点。 如果提供的节点名称未指向群集上的任何活动 Service Fabric 节点,则查询将失败。

请求

方法 请求 URI
GET /Nodes/{nodeName}/$/GetApplications?api-version=6.1&timeout={timeout}&IncludeHealthState={IncludeHealthState}&ContinuationToken={ContinuationToken}&MaxResults={MaxResults}

参数

名称 类型 必须 位置
nodeName string 路径
api-version 字符串 查询
timeout 整数 (int64) 查询
IncludeHealthState boolean 查询
ContinuationToken 字符串 查询
MaxResults 整数 (int64) 查询

nodeName

类型:字符串
必需:是

节点的名称。


api-version

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

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

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

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


timeout

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

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


IncludeHealthState

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

包含实体的运行状况。 如果此参数为 false 或未指定,则返回的运行状况为“Unknown”。 设置为 true,查询将并行转到节点和运行状况系统服务,然后将结果合并。 因此,查询开销更高,并可能需要更长的时间。


ContinuationToken

类型:字符串
必需:否

继续标记参数用于获取下一组结果。 如果单个响应无法容纳来自系统的结果,则 API 响应中包括含有非空值的继续标记。 当此值传递到下一个 API 调用时,API 返回下一组结果。 如果没有更多结果,则该继续标记不包含值。 不应将此参数的值进行 URL 编码。


MaxResults

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

作为分页查询的一部分返回的最大结果数。 此参数定义返回结果数的上限。 如果根据配置中定义的最大消息大小限制,无法将这些结果容纳到消息中,则返回的结果数可能小于指定的最大结果数。 如果此参数为零或者未指定,则分页查询包含返回消息中最多可容纳的结果数。

响应

HTTP 状态代码 说明 响应架构
200 (正常) 成功的操作将返回 200 状态代码和已部署的应用程序信息列表。
PagedDeployedApplicationInfoList
所有其他状态代码 详细的错误响应。
FabricError

示例

限制最大结果数

此示例演示如何指定在获取有关在特定节点上部署的应用程序的信息时查询返回的应用程序数。 使用 MaxResult 参数,一页中的结果数限制为最多 2 个。 此示例中未请求运行状况,因此返回的运行状况状态将为“未知”。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications?api-version=6.1&MaxResults=2

200 响应

正文
{
  "ContinuationToken": "fabric:/samples/PQueueApp1",
  "Items": [
    {
      "Id": "samples~CalculatorApp",
      "Name": "fabric:/samples/CalculatorApp",
      "TypeName": "CalculatorApp",
      "TypeVersion": "1.0.0",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp",
      "HealthState": "Unknown"
    },
    {
      "Id": "samples~PQueueApp1",
      "Name": "fabric:/samples/PQueueApp1",
      "TypeName": "PersistentQueueApp",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp",
      "HealthState": "Unknown"
    }
  ]
}

使用继续标记的页面

此示例演示获取特定节点上部署的应用程序的相关信息时可用的分页功能。 此示例使用 ContinuationToken 参数。 此参数的值是从上一个查询提供的;在本例中,如上所示。 响应包含剩余结果和空的 ContinuationToken。 空 ContinuationToken 指示其他结果不可用。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications?api-version=6.1&ContinuationToken=fabric:/samples/PQueueApp1

200 响应

正文
{
  "ContinuationToken": "",
  "Items": [
    {
      "Id": "samples~VQueueApp1",
      "Name": "fabric:/samples/VQueueApp1",
      "TypeName": "VolatileQueueApp",
      "TypeVersion": "1.0.0",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp",
      "HealthState": "Unknown"
    }
  ]
}

在结果中包含运行状况

此示例演示如何在获取有关在特定节点上部署的应用程序的信息时包括每个已部署应用程序的运行状况状态。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications?api-version=6.1&IncludeHealthState=True

200 响应

正文
{
  "ContinuationToken": "",
  "Items": [
    {
      "Id": "samples~CalculatorApp",
      "Name": "fabric:/samples/CalculatorApp",
      "TypeName": "CalculatorApp",
      "TypeVersion": "1.0.0",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp",
      "HealthState": "Ok"
    },
    {
      "Id": "samples~PQueueApp1",
      "Name": "fabric:/samples/PQueueApp1",
      "TypeName": "PersistentQueueApp",
      "TypeVersion": "1.0.0",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp",
      "HealthState": "Ok"
    },
    {
      "Id": "samples~VQueueApp1",
      "Name": "fabric:/samples/VQueueApp1",
      "TypeName": "VolatileQueueApp",
      "TypeVersion": "1.0.0",
      "Status": "Active",
      "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work",
      "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log",
      "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp",
      "HealthState": "Ok"
    }
  ]
}