启用请求正文记录可能把密码、令牌和个人数据发送到外部日志系统
原文依据:4 处主示例明确启用 `WithRequestBody: true`,而参考配置仅说明正文有大小上限;列出的隐藏机制针对请求/响应头,并未证明任意正文敏感字段都会被清理。与此同时,该 Skill 推荐把日志路由到多个云端和通知后端。
如果 API 请求包含登录凭证、访问令牌、支付信息、健康数据或其他个人信息,这些内容可能进入 Loki、Sentry、Datadog、Slack 或 Webhook,并受其保留、访问和跨境传输规则约束。
示例主动开启请求正文记录;参考资料只说明正文默认限长,并明确的隐藏配置仅针对请求/响应头。若正文含密码、令牌或个人资料,且日志连接到 Loki、Datadog、Sentry 等后端,这些内容可能随日志离开进程。用户可要求作者默认关闭正文记录、说明正文级脱敏保证,并限制获准接收日志的后端。
```go// Gin with filters — skip health checksrouter.Use(sloggin.NewWithConfig(logger, sloggin.Config{ DefaultLevel: slog.LevelInfo, ClientErrorLevel: slog.LevelWarn, ServerErrorLevel: slog.LevelError, WithRequestBody: true, Filters: []sloggin.Filter{ sloggin.IgnorePath("/health", "/metrics"), },}))```查看另外 3 个位置
| `WithRequestID` | `bool` | `false` | Include request ID || `WithRequestBody` | `bool` | `false` | Include request body (capped) || `WithResponseBody` | `bool` | `false` | Include response body (capped) || `WithRequestHeader` | `bool` | `false` | Include request headers || `WithResponseHeader` | `bool` | `false` | Include response headers || `WithSpanID` | `bool` | `false` | Include OpenTelemetry span ID |**Global configuration variables** (set before creating middleware):- `RequestBodyMaxSize` / `ResponseBodyMaxSize` — default 64KB each- `HiddenRequestHeaders` / `HiddenResponseHeaders` — headers to redact- `TraceIDKey` / `SpanIDKey` — context key names for OpenTelemetry| Category | Packages || ------------ | ---------------------------------------------------------- || Cloud | `slog-datadog`, `slog-sentry`, `slog-loki`, `slog-graylog` || Messaging | `slog-kafka`, `slog-fluentd`, `slog-logstash`, `slog-nats` || Notification | `slog-slack`, `slog-telegram`, `slog-webhook` || Storage | `slog-parquet` || Bridges | `slog-zap`, `slog-zerolog`, `slog-logrus` |