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

获取节点上部署的容器日志

获取 Service Fabric 节点上部署的容器的容器日志。

为给定代码包获取 Service Fabric 节点上部署的容器的容器日志。

请求

方法 请求 URI
GET /Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/ContainerLogs?api-version=6.2&ServiceManifestName={ServiceManifestName}&CodePackageName={CodePackageName}&Tail={Tail}&Previous={Previous}&timeout={timeout}

参数

名称 类型 必需 位置
nodeName string 路径
applicationId 字符串 路径
api-version 字符串 查询
ServiceManifestName 字符串 查询
CodePackageName 字符串 查询
Tail 字符串 查询
Previous boolean 查询
timeout integer (int64) 查询

nodeName

类型:字符串
必需:是

节点的名称。


applicationId

类型:字符串
必需:是

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


api-version

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

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

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

此外,运行时接受高于最新支持版本的任何版本,最高接受当前版本的运行时。 因此,如果最新的 API 版本为 6.0 且运行时为 6.1,则运行时将接受该 API 的版本 6.1。 但是,API 的行为将按照所记录的 6.0 版本进行。


ServiceManifestName

类型:字符串
必需:是

在 Service Fabric 群集中注册为应用程序类型一部分的服务清单的名称。


CodePackageName

类型:字符串
必需:是

在 Service Fabric 群集中注册为应用程序类型一部分的服务清单中指定的代码包的名称。


Tail

类型:字符串
必需:否

要从日志末尾显示的行数。 默认值为 100。 “all”表示显示完整日志。


Previous

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

指定是否代码包实例的从退出/失效容器获取容器日志。


timeout

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

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

响应

HTTP 状态代码 描述 响应架构
200 (正常) 成功的操作将返回 200 状态代码和在给定代码包的Service Fabric节点上部署的容器的容器日志。
ContainerLogs
所有其他状态代码 详细的错误响应。
FabricError

示例

获取给定代码包的容器日志

此示例演示如何获取在给定代码包的Service Fabric节点上部署的容器的容器日志。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications/SimpleHttpServerApp/$/GetCodePackages/$/ContainerLogs?api-version=6.2&ServiceManifestName=SimpleHttpServerSvcPkg&CodePackageName=Code

200 响应

正文
{
  "Content": "HTTP Server started listening on port 8080\r\n"
}

获取最后 10 行容器日志

此示例演示如何获取在给定代码包的Service Fabric节点上部署的容器的最后 10 行容器日志。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications/SimpleHttpServerApp/$/GetCodePackages/$/ContainerLogs?api-version=6.2&ServiceManifestName=SimpleHttpServerSvcPkg&CodePackageName=Code&Tail=10

200 响应

正文
{
  "Content": "UTC Time Now: 04/02/2018 22:06:31\r\nUTC Time Now: 04/02/2018 22:06:32\r\nUTC Time Now: 04/02/2018 22:06:33\r\nUTC Time Now: 04/02/2018 22:06:344\r\nUTC Time Now: 04/02/2018 22:06:35\r\nUTC Time Now: 04/02/2018 22:06:36\r\nUTC Time Now: 04/02/2018 22:06:37\r\nUTC Time Now: 04/02/2018 22:06:38\r\nUTC Time Now: 04/02/2018 22:06:39\r\nUTC Time Now: 04/02/2018 22:06:40\r\n"
}

获取给定代码包上一个死容器的容器日志

此示例演示如何在给定代码包的Service Fabric节点上获取先前死容器的容器日志。

请求

GET http://localhost:19080/Nodes/_Node_0/$/GetApplications/SimpleHttpServerApp/$/GetCodePackages/$/ContainerLogs?api-version=6.2&ServiceManifestName=SimpleHttpServerSvcPkg&CodePackageName=Code&Previous=True

200 响应

正文
{
  "Content": "Exception encountered: System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).\r\n\tat System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()\r\n"
}