Skip to main content

Diagnostics Flags

Diagnostics flags 允许开启定向调试日志,而无需全局开启 verbose。Flags 需显式开启,且只有子系统检查到它们时才生效。

工作方式

  • Flags 是字符串(不区分大小写)。
  • 可在配置或通过环境变量启用。
  • 支持通配符:
    • telegram.* 匹配 telegram.http
    • * 启用全部 flags

通过配置启用

{
  "diagnostics": {
    "flags": ["telegram.http"]
  }
}
多个 flags:
{
  "diagnostics": {
    "flags": ["telegram.http", "gateway.*"]
  }
}
修改后重启 gateway。

环境变量覆盖(一次性)

OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload
禁用全部 flags:
OPENCLAW_DIAGNOSTICS=0

日志输出位置

Flags 会写入标准 diagnostics 日志文件。默认:
/tmp/openclaw/openclaw-YYYY-MM-DD.log
若设置了 logging.file,则使用该路径。日志为 JSONL(每行一个 JSON 对象)。仍会按 logging.redactSensitive 做脱敏。

提取日志

选取最新日志文件:
ls -t /tmp/openclaw/openclaw-*.log | head -n 1
过滤 Telegram HTTP 诊断:
rg "telegram http error" /tmp/openclaw/openclaw-*.log
或边复现边 tail:
tail -f /tmp/openclaw/openclaw-$(date +%F).log | rg "telegram http error"
远程 gateway 也可用 openclaw logs --follow(见 /cli/logs)。

  • logging.level 高于 warn,这些日志可能被抑制。默认 info 没问题。
  • Flags 可长期开启,只影响对应子系统的日志量。
  • 使用 /logging 修改日志路径、级别与脱敏。