chore(i18n): refresh zh-CN translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-26 19:20:42 +00:00
parent b439a8f6f0
commit c79d8bde58
4 changed files with 913 additions and 914 deletions

File diff suppressed because it is too large Load Diff

View File

@ -2,74 +2,74 @@
read_when:
- 更改日志输出或格式
- 调试 CLI 或 Gateway 网关输出
summary: 日志输出界面、文件日志、WS 日志样式以及控制台格式化
title: Gateway 网关日志
summary: 日志展示界面、文件日志、WS 日志样式,以及控制台格式化
title: Gateway 网关日志记录
x-i18n:
generated_at: "2026-04-26T18:13:21Z"
generated_at: "2026-04-26T19:16:56Z"
model: gpt-5.4
provider: openai
source_hash: 52ba93f1a79932609687416014b0b1569a7af25abf650bc5b5dded1c95db9a71
source_hash: 52b3904ee693bdabc74b56e6dd924f12215ce741496a03eafc15f74258ad036e
source_path: gateway/logging.md
workflow: 15
---
# 日志
# 日志记录
如需面向用户的概览CLI + Control UI + 配置),请参 [/logging](/zh-CN/logging)。
如需面向用户的概览CLI + Control UI + 配置),请参 [/logging](/zh-CN/logging)。
OpenClaw 有两个日志“输出界面”:
OpenClaw 有两个日志“展示界面”:
- **控制台输出**(你在终端 / Debug UI 中看到的内容)。
- **文件日志**JSON 行),由 Gateway 网关日志记录器写入。
- **控制台输出**(你在终端 / 调试 UI 中看到的内容)。
- **文件日志**JSON 行格式),由 Gateway 网关日志记录器写入。
## 基于文件的日志记录器
- 默认滚动日志文件位于 `/tmp/openclaw/` 下(每天一个文件):`openclaw-YYYY-MM-DD.log`
- 日期使用 Gateway 网关宿主机的本地时区。
- 默认滚动日志文件位于 `/tmp/openclaw/` 下(每天一个文件):`openclaw-YYYY-MM-DD.log`
- 日期使用 Gateway 网关主机的本地时区。
- 活动日志文件会在达到 `logging.maxFileBytes` 时轮转默认100 MB最多保留五个带编号的归档文件并继续写入一个新的活动文件。
- 日志文件路径和级别可通过 `~/.openclaw/openclaw.json` 配置:
- 可通过 `~/.openclaw/openclaw.json` 配置日志文件路径和级别
- `logging.file`
- `logging.level`
文件格式为每行一个 JSON 对象。
Control UI 的 Logs 选项卡会通过 Gateway 网关对该文件执行 tail`logs.tail`)。
Control UI 的 Logs 选项卡会通过 Gateway 网关(`logs.tail`持续跟踪这个文件
CLI 也可以执行相同操作:
```bash
openclaw logs --follow
```
**详细模式与日志级别**
**详细输出与日志级别**
- **文件日志** 仅由 `logging.level` 控制。
- `--verbose` 只影响 **控制台详细程度**(以及 WS 日志样式);它**不会**提升文件日志级别。
- 若要在文件日志中捕获仅详细模式可见的细节,请将 `logging.level` 设置为 `debug``trace`
- **文件日志**仅由 `logging.level` 控制。
- `--verbose` 只影响**控制台详细程度**(以及 WS 日志样式);它**不会**提高文件日志级别。
- 若要在文件日志中捕获仅详细模式可见的细节,请将 `logging.level` 设置为 `debug``trace`
## 控制台捕获
CLI 会捕获 `console.log/info/warn/error/debug/trace`,并将其写入文件日志,同时仍然打印到 stdout/stderr。
CLI 会捕获 `console.log/info/warn/error/debug/trace`,并将其写入文件日志,同时仍然输出到 stdout/stderr。
你可以通过以下配置独立调控制台详细程度:
你可以通过以下配置独立调控制台详细程度:
- `logging.consoleLevel`(默认 `info`
- `logging.consoleStyle``pretty` | `compact` | `json`
## 脱敏
OpenClaw 可以在日志输出离开进程前屏蔽敏感令牌。控制台和文件日志 sink 会应用相同的脱敏策略,因此匹配到的 secret 值会在 JSONL 行写入磁盘前被屏蔽。
OpenClaw 可以在日志或转录输出离开进程之前屏蔽敏感令牌。同一套脱敏策略会应用到控制台、文件日志、OTLP 日志记录以及会话转录文本输出端,因此匹配到的敏感值会在 JSONL 行或消息写入磁盘之前被屏蔽。
- `logging.redactSensitive``off` | `tools`(默认:`tools`
- `logging.redactPatterns`:正则表达式字符串数组(覆盖默认值)
- 使用原始正则表达式字符串(自动附加 `gi`),或者在需要自定义标志时使用 `/pattern/flags`
- 匹配内容会保留前 6 个字符 + 后 4 个字符进行屏蔽(长度 >= 18否则`***`
- 默认规则涵盖常见的密钥赋值、CLI 标志、JSON 字段、bearer 头、PEM 块以及常见令牌前缀。
- 使用原始正则字符串(自动附加 `gi`),如果你需要自定义标志,可使用 `/pattern/flags`
- 匹配项会保留前 6 个字符和后 4 个字符进行遮罩(长度 >= 18否则显示`***`
- 默认规则涵盖常见的密钥赋值、CLI 标志、JSON 字段、bearer 头、PEM 块以及常见令牌前缀。
## Gateway 网关 WebSocket 日志
Gateway 网关以两种模式打印 WebSocket 协议日志:
Gateway 网关以两种模式打印 WebSocket 协议日志:
- **普通模式(无 `--verbose`**:只打印“值得关注”的 RPC 结果:
- **普通模式(不使用 `--verbose`**:仅打印“值得关注”的 RPC 结果:
- 错误(`ok=false`
- 慢调用(默认阈值:`>= 50ms`
- 解析错误
@ -77,11 +77,11 @@ Gateway 网关以两种模式打印 WebSocket 协议日志:
### WS 日志样式
`openclaw gateway` 支持按 Gateway 网关设置样式切换:
`openclaw gateway` 支持按 Gateway 网关切换样式
- `--ws-log auto`(默认):普通模式经过优化;详细模式使用紧凑输出
- `--ws-log compact`详细模式下使用紧凑输出(配对的请求/响应)
- `--ws-log full`详细模式下使用完整的逐帧输出
- `--ws-log auto`(默认):普通模式下会进行优化;详细模式下使用紧凑输出
- `--ws-log compact`:详细模式下使用紧凑输出(配对的请求/响应)
- `--ws-log full`:详细模式下使用完整的逐帧输出
- `--compact``--ws-log compact` 的别名
示例:
@ -97,27 +97,27 @@ openclaw gateway --verbose --ws-log compact
openclaw gateway --verbose --ws-log full
```
## 控制台格式化(子系统日志)
## 控制台格式化(子系统日志记录
控制台格式化器**可感知 TTY**,并打印一致的、带前缀的行。
子系统日志记录器会让输出保持分组且便于快速浏览
控制台格式化器会**感知 TTY**,并输出一致且带前缀的行。
子系统日志记录器会让输出保持分组并便于快速扫描
行为如下
行为:
- 每行都有 **子系统前缀**(例如 `[gateway]`、`[canvas]`、`[tailscale]`
- **子系统颜色**(每个子系统固定)以及级别着
- **当输出为 TTY 或环境看起来像富终端时启用颜色**`TERM`/`COLORTERM`/`TERM_PROGRAM`),并遵循 `NO_COLOR`
- **缩短的子系统前缀**:去掉前导 `gateway/` + `channels/`,保留最后 2 个段(例如 `whatsapp/outbound`
- **按子系统划分的子日志记录器**(自动加前缀 + 结构化字段 `{ subsystem }`
- 每行都有**子系统前缀**(例如 `[gateway]`、`[canvas]`、`[tailscale]`
- **子系统颜色**(每个子系统颜色稳定)以及级别颜
- **当输出为 TTY 或环境看起来像富终端时启用颜色**`TERM`/`COLORTERM`/`TERM_PROGRAM`),并遵循 `NO_COLOR`
- **缩短的子系统前缀**:去掉前导 `gateway/` `channels/`,保留最后 2 个段(例如 `whatsapp/outbound`
- **按子系统划分的子日志记录器**(自动加前缀 + 结构化字段 `{ subsystem }`
- 用于 QR/UX 输出的 **`logRaw()`**(无前缀、无格式化)
- **控制台样式**(例如 `pretty | compact | json`
- 与文件日志级别分离的 **控制台日志级别**(当 `logging.level` 设置为 `debug`/`trace` 时,文件仍保留完整细节)
- **WhatsApp 消息正文**`debug` 级别记录(使用 `--verbose` 可查看
- **控制台日志级别**与文件日志级别分离(当 `logging.level` 设置为 `debug`/`trace` 时,文件仍保留完整细节)
- **WhatsApp 消息正文**会以 `debug` 级别记录(使用 `--verbose` 才能看到
这样既能保持现有文件日志稳定,又能让交互式输出更易于快速浏览
这样既能保持现有文件日志稳定,又能让交互式输出更便于扫描
## 相关内容
- [日志](/zh-CN/logging)
- [日志记录](/zh-CN/logging)
- [OpenTelemetry 导出](/zh-CN/gateway/opentelemetry)
- [诊断导出](/zh-CN/gateway/diagnostics)

File diff suppressed because it is too large Load Diff

View File

@ -1,35 +1,37 @@
---
read_when:
- 你需要一份面向初学者的 OpenClaw 日志概览
- 你想要配置日志级别、格式或敏感信息脱敏处理
- 你想要配置日志级别、格式或脱敏处理
- 你正在进行故障排除,需要快速找到日志
summary: 文件日志、控制台输出、CLI 尾部输出,以及 Control UI 的日志标签页
summary: 文件日志、控制台输出、CLI 尾部跟踪,以及 Control UI 日志标签页
title: 日志
x-i18n:
generated_at: "2026-04-26T06:01:23Z"
generated_at: "2026-04-26T19:16:57Z"
model: gpt-5.4
provider: openai
source_hash: 6fa55caa65a2a06a757e37ad64c5fd030f958cf6827596db5c183c6c6db2ed9b
source_hash: 3c1d4629a1d886d38061a9bb89c4b4e7720189de7647eee2174821070a12b600
source_path: logging.md
workflow: 15
---
OpenClaw 有两个主要的日志示面:
OpenClaw 有两个主要的日志示面:
- 由 Gateway 网关写入的**文件日志**JSON 行)。
- 在终端和 Gateway 网关调试 UI 中显示的**控制台输出**。
Control UI 的**日志**标签页会对 gateway 文件日志执行尾部跟踪。本页说明日志位于哪里、如何读取日志,以及如何配置日志级别和格式。
Control UI 的**日志**标签页会尾随 Gateway 网关文件日志。本页说明日志位于何处、如何读取,以及如何配置日志级别和格式。
## 日志位于哪里
## 日志位
默认情况下Gateway 网关会在以下位置写入滚动日志文件:
`/tmp/openclaw/openclaw-YYYY-MM-DD.log`
日期使用 gateway 主机的本地时区。
日期使用 Gateway 网关宿主机的本地时区。
每个文件在达到 `logging.maxFileBytes`默认值100 MB时会轮转。OpenClaw 会在活动文件旁边最多保留五个带编号的归档文件,例如 `openclaw-YYYY-MM-DD.1.log`,并继续写入一个新的活动日志文件,而不是抑制诊断信息。
每个文件在达到 `logging.maxFileBytes` 时轮转默认值100 MB
OpenClaw 会在当前活动文件旁边最多保留五个带编号的归档文件,例如
`openclaw-YYYY-MM-DD.1.log`,并继续写入新的活动日志文件,而不是抑制诊断信息。
你可以在 `~/.openclaw/openclaw.json` 中覆盖此设置:
@ -43,40 +45,40 @@ Control UI 的**日志**标签页会对 gateway 文件日志执行尾部跟踪
## 如何读取日志
### CLI实时尾部跟踪(推荐)
### CLI实时尾(推荐)
使用 CLI 通过 RPC 对 gateway 日志文件执行尾部跟踪
使用 CLI 通过 RPC 尾随 Gateway 网关日志文件
```bash
openclaw logs --follow
```
当前实用选项:
当前有用的选项:
- `--local-time`你的本地时区渲染时间戳
- `--url <url>` / `--token <token>` / `--timeout <ms>`:标准 Gateway RPC 标志
- `--expect-final`:由智能体支持的 RPC 最终响应等待标志(通过共享客户端层在此处接受)
- `--local-time`使用你的本地时区渲染时间戳
- `--url <url>` / `--token <token>` / `--timeout <ms>`:标准 Gateway 网关 RPC 标志
- `--expect-final`:由智能体支持的 RPC 最终响应等待标志(这里通过共享客户端层接受)
输出模式:
- **TTY 会话**:美观、带颜色、结构化的日志行。
- **非 TTY 会话**:纯文本。
- `--json`行分隔 JSON每行一个日志事件
- `--json`:行分隔 JSON每行一个日志事件
- `--plain`:在 TTY 会话中强制使用纯文本。
- `--no-color`:禁用 ANSI 颜色。
当你传入显式的 `--url`CLI 不会自动应用配置或环境变量凭证;如果目标 Gateway 网关需要身份验证,请自行附带 `--token`
当你显式传入 `--url`CLI 不会自动应用配置或环境变量中的凭证;如果目标 Gateway 网关需要认证,请自行包含 `--token`
在 JSON 模式下CLI 会输出带有 `type` 标签的对象:
- `meta`:流元数据(文件、游标、大小)
- `log`:已解析的日志条目
- `notice`:截断 / 轮转提示
- `raw`:未解析的日志行
- `raw`:未解析的原始日志行
如果 local loopback Gateway 网关请求配对,`openclaw logs` 会自动回退到已配置的本地日志文件。显式的 `--url` 目标不会使用此回退机制
如果本地 local loopback Gateway 网关请求配对,`openclaw logs` 会自动回退到已配置的本地日志文件。显式指定`--url` 目标不会使用此回退。
如果 Gateway 网关无法访问CLI 会打印一条简短提示,建议运行:
如果 Gateway 网关无法访问CLI 会输出一条简短提示,建议运行:
```bash
openclaw doctor
@ -84,11 +86,12 @@ openclaw doctor
### Control UI网页
Control UI 的**日志**标签页使用 `logs.tail` 对同一个文件执行尾部跟踪。如何打开它,请参阅 [/web/control-ui](/zh-CN/web/control-ui)。
Control UI 的**日志**标签页会使用 `logs.tail` 尾随同一个文件。
有关如何打开它,请参见 [/web/control-ui](/zh-CN/web/control-ui)。
### 仅渠道日志
如需筛选渠道活动WhatsApp / Telegram 等),请使用:
要筛选渠道活动WhatsApp/Telegram 等),请使用:
```bash
openclaw channels logs --channel whatsapp
@ -102,21 +105,21 @@ openclaw channels logs --channel whatsapp
### 控制台输出
控制台日志是**TTY 感知**的,并针对可读性进行了格式化
控制台日志是**TTY 感知的**,并经过格式化以提高可读性
- 子系统前缀(例如 `gateway/channels/whatsapp`
- 级别着色info / warn / error
- 可选紧凑模式或 JSON 模式
- 级别着色info/warn/error
- 可选紧凑模式或 JSON 模式
控制台格式由 `logging.consoleStyle` 控制。
### Gateway WebSocket 日志
### Gateway 网关 WebSocket 日志
`openclaw gateway` 还提供用于 RPC 流量的 WebSocket 协议日志:
- 普通模式:仅显示重要结果(错误、解析错误、慢调用)
- `--verbose`:显示所有请求 / 响应流量
- `--ws-log auto|compact|full`:选择详细渲染样式
- `--verbose`:显示全部请求/响应流量
- `--ws-log auto|compact|full`:选择详细日志的渲染样式
- `--compact``--ws-log compact` 的别名
示例:
@ -149,7 +152,7 @@ openclaw gateway --verbose --ws-log full
- `logging.level`**文件日志**JSONL级别。
- `logging.consoleLevel`**控制台**详细程度级别。
你可以通过 **`OPENCLAW_LOG_LEVEL`** 环境变量覆盖这两者(例如 `OPENCLAW_LOG_LEVEL=debug`)。该环境变量优先于配置文件,因此你可以在不编辑 `openclaw.json` 的情况下,仅为单次运行提高详细程度。你也可以传递全局 CLI 选项 **`--log-level <level>`**(例如 `openclaw --log-level debug gateway run`),它会为该命令覆盖环境变量。
你可以通过 **`OPENCLAW_LOG_LEVEL`** 环境变量覆盖这两者(例如 `OPENCLAW_LOG_LEVEL=debug`)。该环境变量优先于配置文件,因此你可以在不编辑 `openclaw.json` 的情况下,仅为单次运行提高详细程度。你还可以传递全局 CLI 选项 **`--log-level <level>`**(例如,`openclaw --log-level debug gateway run`),它会为该命令覆盖环境变量。
`--verbose` 只影响控制台输出和 WS 日志详细程度;它不会更改文件日志级别。
@ -157,29 +160,33 @@ openclaw gateway --verbose --ws-log full
`logging.consoleStyle`
- `pretty`:适合人阅读,带颜色和时间戳。
- `pretty`:适合人阅读,带颜色和时间戳。
- `compact`:更紧凑的输出(最适合长时间会话)。
- `json`:每行一个 JSON用于日志处理器)。
- `json`:每行一个 JSON用于日志处理器
### 脱敏处理
工具摘要可以在输出到控制台之前,对敏感令牌进行脱敏:
OpenClaw 可以在敏感令牌进入控制台输出、文件日志、OTLP 日志记录或持久化会话转录文本之前对其进行脱敏:
- `logging.redactSensitive``off` | `tools`(默认值:`tools`
- `logging.redactPatterns`用于覆盖默认集合的正则表达式字符串列表
- `logging.redactPatterns`:正则表达式字符串列表,用于覆盖默认集合
脱敏处理会在日志输出端应用于**控制台输出**、**路由到 stderr 的控制台诊断信息**以及**文件日志**。文件日志仍保持为 JSONL但在将行写入磁盘之前匹配的秘密值会被屏蔽
文件日志和会话转录仍然保持为 JSONL但在写入磁盘前匹配到的秘密值会先在行或消息中被屏蔽。脱敏处理是尽力而为的它会应用于承载文本的消息内容和日志字符串但不会覆盖每个标识符或二进制负载字段
## 诊断与 OpenTelemetry
## Diagnostics 和 OpenTelemetry
诊断是结构化、机器可读的事件用于模型运行和消息流遥测webhook、排队、会话状态。它们**不会**取代日志——它们为指标、追踪和导出器提供输入。无论你是否导出它们,事件都会在进程内发出。
Diagnostics 是用于模型运行和消息流遥测webhook、排队、会话状态的结构化、机器可读事件。它们**不会**替代日志——它们用于驱动指标、追踪和导出器。无论你是否导出它们,事件都会在进程内发出。
两个相邻的示面:
两个相邻的示面:
- **OpenTelemetry 导出** —— 通过 OTLP / HTTP 将指标、追踪和日志发送到任何兼容 OpenTelemetry 的收集器或后端Grafana、Datadog、Honeycomb、New Relic、Tempo 等)。完整配置、信号目录、指标 / span 名称、环境变量和隐私模型位于专门页面:[OpenTelemetry 导出](/zh-CN/gateway/opentelemetry)。
- **诊断标志** —— 定向调试日志标志,可在不提高 `logging.level` 的情况下,将额外日志路由到 `logging.file`。标志不区分大小写,并支持通配符(`telegram.*`、`*`)。可在 `diagnostics.flags` 下配置,或通过 `OPENCLAW_DIAGNOSTICS=...` 环境变量覆盖。完整指南请参阅:[诊断标志](/zh-CN/diagnostics/flags)。
- **OpenTelemetry 导出**——通过 OTLP/HTTP 将指标、追踪和日志发送到任何兼容 OpenTelemetry 的收集器或后端Grafana、Datadog、Honeycomb、New Relic、Tempo 等)。完整配置、信号目录、指标 / span 名称、环境变量和隐私模型位于专门页面:
[OpenTelemetry 导出](/zh-CN/gateway/opentelemetry)。
- **Diagnostics 标志**——有针对性的调试日志标志,可将额外日志路由到
`logging.file`,而无需提高 `logging.level`。这些标志不区分大小写,并支持通配符(`telegram.*`、`*`)。可在 `diagnostics.flags`
下配置,或通过 `OPENCLAW_DIAGNOSTICS=...` 环境变量覆盖。完整指南:
[Diagnostics 标志](/zh-CN/diagnostics/flags)。
如果你想为插件或自定义输出端启用诊断事件,而不使用 OTLP 导出:
要为插件或自定义接收端启用 Diagnostics 事件,而不使用 OTLP 导出:
```json5
{
@ -187,17 +194,17 @@ openclaw gateway --verbose --ws-log full
}
```
如需将 OTLP 导出到收集器,请参 [OpenTelemetry 导出](/zh-CN/gateway/opentelemetry)。
如需将 OTLP 导出到收集器,请参 [OpenTelemetry 导出](/zh-CN/gateway/opentelemetry)。
## 故障排除提示
- **Gateway 网关无法访问?** 先运行 `openclaw doctor`
- **日志为空?** 检查 Gateway 网关是否正在运行,以及是否正在`logging.file` 中的文件路径写入
- **日志为空?** 检查 Gateway 网关是否正在运行,以及是否正在写入 `logging.file` 中的文件路径
- **需要更多细节?**`logging.level` 设置为 `debug``trace` 后重试。
## 相关内容
- [OpenTelemetry 导出](/zh-CN/gateway/opentelemetry) — OTLP / HTTP 导出、指标 / span 目录、隐私模型
- [诊断标志](/zh-CN/diagnostics/flags) — 定向调试日志标志
- [OpenTelemetry 导出](/zh-CN/gateway/opentelemetry) — OTLP/HTTP 导出、指标 / span 目录、隐私模型
- [Diagnostics 标志](/zh-CN/diagnostics/flags) — 有针对性的调试日志标志
- [Gateway 网关日志内部机制](/zh-CN/gateway/logging) — WS 日志样式、子系统前缀和控制台捕获
- [配置参考](/zh-CN/gateway/configuration-reference#diagnostics) — 完整的 `diagnostics.*` 字段参考