参考:网关日志架构
适用于:所有 API 管理层级
本文提供 Azure API 管理 GatewayLogs 资源日志的架构参考。 日志条目还包括顶级通用架构中的字段。
若要在 API 管理中启用资源日志的收集,请参阅监视已发布的 API。
GatewayLogs 架构
对于每个 API 请求,记录以下属性。
属性 | 类型 | 说明 |
---|---|---|
ApiId | 字符串 | 当前请求的 API 实体标识符 |
ApimSubscriptionId | 字符串 | 当前请求的订阅实体标识符 |
ApiRevision | 字符串 | 当前请求的 API 修订版本 |
BackendId | 字符串 | 当前请求的后端实体标识符 |
BackendMethod | 字符串 | 发送到后端的请求的 HTTP 方法 |
BackendProtocol | 字符串 | 发送到后端的请求的 HTTP 协议版本 |
BackendRequestBody | string | 后端请求正文 |
BackendRequestHeaders | 动态 | 发送到后端的 HTTP 标头集合 |
BackendResponseBody | string | 后端响应正文 |
BackendResponseCode | int | 从后端收到的 HTTP 响应代码 |
BackendResponseHeaders | 动态 | 从后端接收的 HTTP 标头集合 |
BackendTime | long | 花在整个后端 I/O(连接、发送和接收字节)上的时间(毫秒) |
BackendUrl | 字符串 | 发送到后端的请求的 URL |
缓存 | 字符串 | 在请求处理过程中涉及的 API 管理缓存的状态(命中、未命中、无) |
CacheTime | long | 花在整个 API 管理缓存 IO(连接、发送和接收字节)上的时间(毫秒) |
ClientProtocol | 字符串 | 传入请求的 HTTP 协议版本 |
ClientTime | long | 花在整个客户端 I/O(连接、发送和接收字节)上的时间(毫秒) |
ClientTlsVersion | 字符串 | 客户端发送请求使用的 TLS 版本 |
错误 | 动态 | 请求处理期间发生的错误集合 |
IsRequestSuccess | bool | HTTP 请求完成,响应状态代码在 2xx 或 3xx 范围内 |
LastErrorElapsed | long | 从网关收到请求到发生错误经过的时间(毫秒) |
LastErrorMessage | 字符串 | 错误消息 |
LastErrorReason | 字符串 | 错误原因 |
LastErrorScope | string | 导致错误的策略所在策略文档的范围 |
LastErrorSection | string | 导致错误的策略所在策略文档的部分 |
LastErrorSource | string | 导致错误的策略或内部处理程序的命名 |
方法 | string | 传入请求的 HTTP 方法 |
OperationId | string | 当前请求的操作实体标识符 |
ProductId | 字符串 | 当前请求的产品实体标识符 |
RequestBody | string | 客户端请求正文 |
RequestHeaders | 动态 | 客户端发送的 HTTP 标头集合 |
RequestSize | int | 在请求处理过程中从客户端接收的字节数 |
ResponseBody | string | 网关响应正文 |
ResponseCode | int | 发送到客户端的 HTTP 响应的状态代码 |
ResponseHeaders | 动态 | 发送到客户端的 HTTP 标头集合 |
ResponseSize | int | 在请求处理过程中发送到客户端的字节数 |
TotalTime | long | 总 HTTP 请求花费的毫秒数(从 API 管理收到的第一个字节到客户端收回的最后一个字节) |
TraceRecords | 动态 | 跟踪策略发出的记录 |
URL | string | 传入请求的 URL |
UserId | string | 当前请求的用户实体标识符 |
后续步骤
- 有关在 API 管理中监视 API 的信息,请参阅监视已发布的 API
- 了解有关 Azure 资源日志的通用和特定于服务的架构的详细信息
- DeveloperPortalAuditLogs schema reference