您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档。 信息
下载 API Monitoring 日志,以查看用于计算 API Monitoring 信息中心内所显示指标的原始数据。您可以下载自定义时间范围、特定代理、特定状态代码以及许多其他变量的日志。
status=2xx
添加到请求中。例如:https://apimonitoring.enterprise.apigee.com/logs?status=2xx
。
以下各部分介绍了如何使用 API 管理日志:
如需详细了解 Logs API,请参阅 Logs API。
如需了解这些示例中使用的 c网址 选项,请参阅使用 c网址。
下载组织和环境的日志
使用 Logs API 下载特定组织和环境的日志:
https://apimonitoring.enterprise.apigee.com/logs
您必须使用 org
和 env
查询参数传递组织和环境的名称。
默认情况下,API 会返回过去一小时内最新的 10 个日志条目。例如:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
将 $ACCESS_TOKEN
设置为 OAuth 2.0 访问令牌,如获取 OAuth 2.0 访问令牌中所述。
响应是日志条目数组,格式如下:
[
{
"request":"GET /v1/o/myorg/z HTTP/1.1",
"request_length":1349,
"request_message_id":"rrt-0623eb157b650315c-c-ne-7785-16029140-1",
"virtual_host":"api.enterprise.apigee.com",
"response_size":144,
"response_time":0.551,
"response_status":"404",
"timestamp":"2018-08-14T17:31:07Z",
"fault_code":"messaging.adaptors.http.flow.ErrorResponseCode",
"fault_flow":"-",
"fault_policy":"null/null",
"fault_proxy":
"/organizations/myorg/environments/prod/apiproxies/myAPI/revisions/50",
"fault_source":"target"
},
…
]
使用 from
和 to
查询参数指定 ISO 格式的时间范围。日期格式可以是:
yyyy-mm-ddThh:mm:ssZ
yyyy-mm-ddThh:mm:ss+00:00
例如:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&from=2018-08-13T14%3A04%3A00Z&to=2018-08-13T14%3A10%3A00Z" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
该 API 有许多可选的查询参数。
例如,如需查看名为 myAPI
的代理(生成 HTTP 404 响应)的日志,请使用以下命令:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
如需返回 10 个以上的日志条目,请设置 limit
查询参数。您可以将其设置为最大值 1000:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404&limit=200" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
如需了解其他选项,请参阅 Logs API。
列出与虚拟主机和基本路径关联的代理
借助边缘路由器上的虚拟主机,您可以指定域名、协议(例如 HTTP/HTTPS)和端口号。例如,您在 Edge Router 路由器上使用以下设置定义一个虚拟主机:
- 主机别名 = apis.acme.com
- port = 443
- TLS 已启用
根据这些设置,向与此虚拟主机关联的 API 代理发出的请求将使用以下格式:
https://apis.acme.com/proxy-base-path/resource-path
其中:
- proxy-base-path 在您创建 API 代理时定义,并且对于每个 API 代理都是唯一的。
- resource-path 是通过 API 代理访问的资源的路径。
如需详细了解虚拟主机,请参阅虚拟主机简介。
通过向 Logs API 的以下资源发出 GET 请求,下载与特定虚拟主机和基本路径关联的 API 代理列表:
https://apimonitoring.enterprise.apigee.com/logs/apiproxies
您必须使用 org
和 env
查询参数以及与虚拟主机和基本路径关联的 URI 传递组织和环境的名称。
例如,以下 API 调用会返回与虚拟主机 http://apis.acme.com
关联且基本路径为 /v1/perf
的代理:
curl -X GET \ "https://apimonitoring.enterprise.apigee.com/logs/apiproxies?org=myorg&env=prod&select=http://apis.acme.com/v1/perf" \ -H "accept: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN"
将 $ACCESS_TOKEN
设置为 OAuth 2.0 访问令牌,如获取 OAuth 2.0 访问令牌中所述。
如需了解其他选项,请参阅 Logs API。