操作场景
云原生 API 网关默认为您提供网关实时日志服务和简单搜索能力,免费使用。
默认日志主要分为用户访问日志和网关错误日志。您可以通过查看云原生 API 网关的访问日志了解用户的请求相关信息,便于进行数据分析、审计、业务排障等或者查看,也可以查看云原生 API 网关的错误日志,以便排查问题。
访问日志(accessLog)记录了用户的请求相关信息,可用于进行数据分析、审计、业务排障等。
错误日志(errorLog)是网关内部错误日志,用于网关排障。
本文为您介绍云原生 API 网关默认日志功能的使用说明。
前提条件
查看默认日志
1. 登录 TSE 控制台。
2. 在左侧导航栏单击云原生 API 网关 > 数据观测,在页面上方选择好网关实例,单击默认日志页面。
3. 设置好您要查看的日志,页面即可展示相关日志内容。 可以通过关键字查询相关日志。输入关键词查询,例如:“info”,注意日志检索区分大小写。


编辑默认日志规则
在默认日志页面,单击右上角的编辑日志规则,即可修改默认日志规则。您可以选择继续使用默认规则,也可以根据您的业务需求自定义日志规则。
编辑默认日志规则时支持开启和关闭 HTTP 和 TCP 的日志输出。
注意:
修改默认日志规则后,投递到 CLS 的日志规则也会同步修改,请谨慎操作。

日志字段
下表列出了云原生 API 网关支持的访问日志字段,您可以根据需要进行配置:
HTTP/HTTPS 日志字段
字段 | 说明 |
$remote_addr | 客户端地址。 |
$status | HTTP 状态码。 |
$remote_user | Basic authentication 提供的用户名。 |
$time_local | 请求时间。 |
$request | 完整的请求行。 |
$body_bytes_sent | 发送给客户端的文件主体内容的大小。 |
$request_method | 请求方法。 |
$host | 请求携带 Host 请求头时为“Host”字段的值,未携带时为主机虚拟域名。 |
$upstream_addr | 后端服务的 IP 地址。 |
$upstream_status | 上游服务返回响应中的 HTTP 响应码。 |
$upstream_response_time | 上游服务响应耗时(毫秒精度),包括网关向后端服务开始建立连接、接收数据、关闭连接的时间。 |
$scheme | HTTP 或 HTTPS 协议。 |
$url | 请求 URL。 |
$request_length | 请求数据大小 bytes,包含请求行、请求头、请求体。 |
$bytes_sent | 响应字节数。 |
$http_referer | 页面来源,header Referer 引用页面 URL。 |
$http_user_agent | 客户端代理信息。 |
$request_time | 请求耗时,从接收请求开始到发送完响应数据的时间,包含接收请求数据、处理请求、返回响应数据的时间。 |
TCP/UDP 日志字段
字段 | 说明 |
$remote_addr | 客户端 IP 地址。 |
$time_local | 请求时间,处理完请求打印日志的时间。 |
$protocol | 四层协议 tcp 或 udp。 |
$status | 连接状态,可选值200, 400, 403, 500, 502, 503。 |
$bytes_sent | 响应字节数,网关发往客户端的字节数。 |
$bytes_received | 接收字节数,网关从客户端接收到的字节数,包括响应头和响应体。 |
$session_time | 会话持续时间(毫秒精度)。 |
Nginx 变量
不支持的 Nginx 变量如下:
1. 如下变量:
$connection_time
$http3
$jwt_claim_
$jwt_header_
$jwt_payload
$memcached_key
$mqtt_preread_clientid
$mqtt_preread_username
$otel_parent_id
$otel_parent_sampled
$otel_span_id
$otel_trace_id
$proxy_protocol_tlv_
$proxy_protocol_tlv_aws_vpce_id
$proxy_protocol_tlv_azure_pel_id
$proxy_protocol_tlv_gcp_conn_id
$secure_link
$secure_link_expires
$session_log_binary_id
$session_log_id
$slice_range
$ssl_alpn_protocol
$ssl_curve
$upstream_queue_time
2. geo 开头的变量。