OC
OpenClaw 中文解释版

给五岁小朋友也能看懂的说明书

简要总结

Diagnostics Flags

这页说明书在讲一个叫“诊断小旗子”的东西。它就像给机器人贴小标签,告诉它:“请把关于这件事的悄悄话都记下来。”这样,当机器人遇到问题时,你就能看到它关于这件事的特别日记,而不用看它所有的日记,那样就太多啦!当你觉得机器人哪里工作不对劲,想仔细看看时,就可以用这个办法。

五岁小孩版解释

“诊断小旗子”是一些有魔力的词。它们就像一个个小开关,每个开关管着机器人身体里不同的小零件。当你打开一个开关,那个小零件就会把它工作时的想法和遇到的麻烦,都写进日记里。这样你就能只看到你想看的部分,日记本不会一下子被写满。

这些“小旗子”其实就是一些词,比如“telegram.http”。机器人不关心你写的是大写还是小写字母。你还可以用星星*来代表“所有”,比如“telegram.*”就能打开所有和“telegram”有关的小旗子。

怎么打开这些小旗子呢?有两种主要方法。 第一种方法,是修改机器人的“设置说明书”(也就是配置文件)。你要在说明书里找到“diagnostics”这个地方,然后在它的“flags”后面,写上你想打开的小旗子名字,像这样:

  1. 你要告诉机器人打开哪些小旗子。怎么做呢?在配置文件的 "flags" 后面,用方括号 [] 把旗子名字包起来,名字要用双引号 "" 括好。 比如:["telegram.http"] 就是打开一个叫“telegram.http”的小旗子。
  2. 你可以一次打开好几个小旗子。怎么做呢?在方括号里,用逗号 , 把不同的旗子名字分开。 比如:["telegram.http", "gateway.*"]
  3. 改完“设置说明书”后,一定要记得让机器人重新读一遍。怎么做呢?你需要重启一下机器人(gateway),它才知道你改了设置。

第二种方法,是像说悄悄话一样临时告诉机器人。这就像你偷偷在机器人耳边说一句咒语,它这次运行就会听你的,但下次可能就忘了。这个咒语是通过一个叫“环境变量”的东西来念的。

  1. 你要临时打开一些小旗子。怎么做呢?在启动机器人前,先设置一个叫 OPENCLAW_DIAGNOSTICS 的咒语,等号后面写上旗子名字,用逗号分开。 比如:OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload
  2. 如果你想关掉所有小旗子。怎么做呢?就把咒语的值写成 0。 比如:OPENCLAW_DIAGNOSTICS=0

机器人把这些特别的日记写在哪里了呢?它们都放在一个固定的日记本里。这个日记本默认在 /tmp/openclaw/ 这个文件夹里,名字像 openclaw-YYYY-MM-DD.log(YYYY-MM-DD是今天的日期)。如果你在“设置说明书”里用 logging.file 指定了别的日记本,那就会写到那里去。日记的每一行都是一个JSON小纸条。机器人还是会很小心,如果设置了 logging.redactSensitive,它就会把敏感信息(比如密码)涂黑再写下来。

当你想看这些日记时,可以这样做:

  1. 先找到最新的那本日记。怎么做呢?在电脑上输入命令:ls -t /tmp/openclaw/openclaw-*.log | head -n 1,它就会告诉你最新日记的名字。
  2. 然后,你可以在日记里寻找特定的内容。比如,只想看关于“telegram http error”的日记。怎么做呢?输入命令:rg "telegram http error" /tmp/openclaw/openclaw-*.logrg 是一个好用的搜索工具。
  3. 或者,你可以一边让机器人工作,一边盯着日记本看新内容。怎么做呢?输入命令:tail -f /tmp/openclaw/openclaw-$(date +%F).log | rg "telegram http error"tail -f 就像你的眼睛一直盯着日记本最后一行。

这里有几件重要的事情要记住哦:

  • 如果“设置说明书”里 logging.level 的等级设得比 warn 高(比如 error),那么有些小旗子的日记可能就看不到了。不过没关系,默认的 info 等级就很好。
  • 这些小旗子一直开着也很安全,它们只会让特定的部分多写点日记,不会弄坏机器人。
  • 如果你想改变日记写在哪里、写多详细、或者要不要涂黑敏感信息,可以去看看关于 /logging 的说明书。