Stdout Log
概述
stdout-log 策略用于将 API 请求和响应数据记录到控制台(标准输出)。它在请求处理期间提供详细的头部、主体和自定义字段的日志记录。这对于调试和监控目的非常有用,特别是在诊断故障或跟踪跨服务的数据流时。然而,建议谨慎操作,因为记录大型请求/响应负载可能会导致性能问题或过多的日志量。
该策略可以选择性地记录完整的主体、头部或仅错误响应,并支持自定义字段注入和敏感数据的掩码处理。
配置详情
字段 | 类型 | 描述 |
---|---|---|
withBodyLog | 切换 | 启用时记录请求和响应主体。可能导致大量日志。 |
withHeaderLog | 切换 | 启用时记录请求头。 |
withErrorBodyLog | 切换 | 启用时,仅记录失败响应(HTTP 状态码 >= 300)的请求/响应主体。 |
customFields | JSON 编辑器 | 允许将额外的自定义字段插入日志数据中。值必须是有效的 JSON。示例: "request_uri": "xyz" |
maskingFields | 表单 | 定义在日志中需要掩码的字段以保护隐私。适用于请求主体、响应主体或请求头。需要启用 withBodyLog 或 withHeaderLog。 |
备注
无法更改:切换以防止此策略被删除。
无法更改设置值:切换以防止在设置后更改配置值。
如果在掩码仍然处于活动状态时禁用 withBodyLog 或 withHeaderLog,将出现一个警告模态,建议删除掩码规则以避免日志不一致。
掩码字段选项
每个掩码规则需要:
- 类型:请求体、响应体或请求头之一。
- 字段名称:要掩码的字段(例如,账户、电话)。
- 掩码值:用来替换字段的值(例如,*** 或掩码模式)。
用户可以点击蓝色添加按钮以添加新的掩码字段进行配置,或点击相应字段上的红色减号按钮以删除。
示例
记录所有有效负载
"withBodyLog": true,
"withHeaderLog": true,
"withErrorBodyLog": false
- 记录每个请求的请求和响应体以及所有头部。
- 适合开发环境。
仅记录错误
"withErrorBodyLog": true
- 仅在响应状态为 300 或以上时记录体和头部。
- 有助于减少日志量,同时仍然捕获重要错误。
日志中的自定义字段
{
"customFields": {
"request_id": "abc123",
"env": "staging"
}
}
- 在每个日志条目中添加自定义元数据。
掩码敏感信息
类型 | 字段 | 掩码值 |
---|---|---|
请求体 | 账户 | ***** |
请求体 | 电话 | 010-- |
这些值将在记录的请求/响应体输出中自动被掩码。