先把级别调对

log-level 有五档:silenterrorwarninginfodebug。日常挂着建议 warning——真出事才有输出,平时安静。要看每条连接命中哪条规则,临时切到 info

debug 只在排查具体问题时开,用完就关。它刷得太快,你根本来不及看;更实际的顾虑是它会把你访问的每一个域名都写下来,多数客户端还会同时落到磁盘上的日志文件里。

合作推荐订阅链接从哪来?本站合作机场注册即送 1GB 香港高速体验流量,可直接一键导入。获取高速节点

一行日志里有什么

info 级别下最有价值的是连接行:时间、级别、然后是这次请求的目标(域名或 IP 加端口)、命中的规则类型和内容、以及最终选了哪个出口。三样东西凑齐,「为什么这个站走错了线路」这个问题就是可以直接读出答案的,不用猜。

另一类是内核自己的状态行:加载配置、启动监听、DNS 初始化、TUN 接口创建。这些集中在启动那几秒,之后就不太出现了。

问题一:这个网站走了哪条规则

  1. log-level 切到 info,重载配置。
  2. 清空日志窗口,然后关掉浏览器里其它标签页——不然背景请求会把你要找的那行淹掉。
  3. 只访问你要查的那个站,回头看新出现的行,找目标域名。
  4. 读它命中的规则。如果命中的不是你写的那条,说明前面有一条更靠前的规则先匹配上了;规则是从上往下第一条命中就停的。

问题二:客户端起不来

只看最前面十几行,别往下翻。配置解析出错一定发生在加载阶段,而且报错通常带字段名,有时带行号——比如某个 proxy-groups 引用了不存在的节点名,或者某个字段类型不对。找到那行,去配置里对应位置改。

如果最前面几行显示监听失败,那不是配置写错,是端口被占了。这种情况日志会点出具体端口号,换个端口或者找出占用的进程。

问题三:时通时断

这类问题看的不是某一行,是重复出现的模式。找 timeoutEOFconnection reseti/o timeout 这类字样,然后回答一个问题:它们集中在同一个节点,还是所有节点都有?集中在一个节点,换节点就完事;所有节点都有,问题多半在本地网络或者 DNS,不在代理链路上。

贴日志到论坛或者群里之前,先删掉两样东西:订阅域名(往往带 token),以及你自己访问过的域名列表——那基本等于一份浏览历史。截图比复制文本更容易漏掉边角,最好用文本,删干净了再发。