请求/响应采集

更新时间:
复制 MD 格式

请求/响应采集是网关的一项日志增强能力,可将经过网关的请求和响应内容记录到访问日志中,随访问日志投递到日志服务(SLS),便于问题排查、接口审计和流量分析。

采集内容分为请求头、请求体、响应头和响应体四项,每项可独立开启或关闭。该功能在网关级别生效,作用于该网关下的所有流量。

重要

开启该功能会显著增加日志量和日志成本,建议仅在调试时开启,问题定位完成后及时关闭。

网关版本要求

该功能需要较新的网关引擎版本。开启时系统会自动校验版本,不满足要求时会拒绝并提示升级。关闭操作不受版本限制,任何版本都可随时关闭。

网关类型

最低引擎版本

云原生 API 网关

2.1.18 及以上

AI 网关

2.1.20 及以上

若版本过低,请先升级网关引擎版本后再开启。

配置说明

功能包含以下配置项:

配置项

说明

默认值

记录请求 Headers

是否采集请求头

关闭

记录请求 Body

是否采集请求体

关闭

请求 Body 最大采集大小(Bytes)

请求体最大采集字节数

10240(10 KB)

记录响应 Headers

是否采集响应头

关闭

记录响应 Body

是否采集响应体

关闭

响应 Body 最大采集大小(Bytes)

响应体最大采集字节数

10240(10 KB)

Body 最大采集大小规则

  • 单位为字节(Bytes),仅在对应 Body 采集开启时生效。

  • 不填或填 0 及以下:按默认 10 KB 采集。

  • 上限为 10 MB,超过上限会自动按 10 MB 处理,不报错。

  • 超出该大小的 Body 内容会被截断,只保留前面部分。

开启与关闭

开启

重要

采集内容随访问日志投递到日志服务(SLS)。开启前,确保已配置访问日志投递。

  1. 进入网关详情页,打开参数配置,找到访问日志投递配置区域。

  2. 找到请求/响应采集,单击其右侧的状态链接打开配置弹窗。

  3. 按需开启记录请求 Headers记录请求 Body记录响应 Headers记录响应 Body,并设置 Body 最大采集大小。

  4. 单击保存。保存成功后,状态链接变为"已开启"。

关闭

打开配置弹窗,关闭对应开关并单击保存。四项全部关闭即等同关闭整个功能,保存后状态链接变为"未开启",相关内容不再写入访问日志。

查看采集到的日志

采集到的内容会作为附加字段写入网关访问日志,随访问日志一起进入日志服务(SLS)。采集内容对应以下日志字段:

采集内容

访问日志字段

控制开关

请求头

request_headers 对象下的 envoy.all_request_headers 子字段

记录请求 Headers

请求体

顶层字段 request_body

记录请求 Body

响应头

response_headers 对象下的 envoy.all_response_headers 子字段

记录响应 Headers

响应体

顶层字段 response_body

记录响应 Body

字段说明

  • 请求体/响应体:直接写入顶层字段 request_body / response_body

  • 请求头/响应头:写入 request_headers / response_headers 对象内的 envoy.all_request_headers / envoy.all_response_headers 子字段。这两个对象也承载访问日志的自定义 Header 采集能力,因此采集到的完整头信息以子字段形式与其共存,不会互相覆盖。

字段出现规则

  • 字段按需出现:只有对应采集项开启时,相关字段才会写入访问日志;未开启的采集项对应的字段不会出现。

  • 通过日志服务(SLS)可按上述字段进行查询、过滤和分析。

  • 当请求体/响应体超过配置的最大采集大小时,对应字段中只保留截断后的前面部分内容。

数据安全与采集限制

  • 敏感数据:请求/响应的头和正文中可能包含令牌、密码、个人信息等敏感数据。开启前请评估合规与脱敏要求,仅开启必要的采集项,并合理设置 Body 大小。

  • Body 采集范围:并非所有类型的正文都会被记录(受内容类型限制),且超过设置大小的部分会被截断。