🛠️ OpenClaw 日志时区异常(慢8小时)快速修复指南

📋 问题现象

在使用 openclaw logs --follow 查看运行日志时,发现打印的时间戳比当前北京时间慢 8 小时(即显示为 UTC 时间),而系统本身的 date 命令时间却是正确的。

🔍 根因分析

OpenClaw 基于 Node.js 运行。在某些 Linux 环境(特别是通过脚本或特定终端启动时),如果进程未继承到 TZ (Time Zone) 环境变量,Node.js 会默认回退到 UTC 时区,导致日志时间与实际本地时间不符。

✅ 解决方案

第一步:验证环境变量
在终端执行以下命令,检查是否已设置时区变量:

echo $TZ

  • 若输出为空:说明未设置,确认为此问题导致。
  • 若输出 Asia/Shanghai:请检查其他配置,通常此情况少见。

第二步:临时修复(立即生效)
在当前终端会话中导出时区变量,然后重启服务或查看日志:

export TZ=Asia/Shanghai
#重新运行查看日志命令
openclaw logs --follow

注:此方法仅对当前终端窗口有效,关闭窗口后失效。

第三步:永久修复(推荐)
将时区配置写入用户配置文件,确保每次登录或启动服务时自动生效。

  • 追加配置到 .bashrc:
echo 'export TZ=Asia/Shanghai' >> ~/.bashrc
  • 刷新配置使其立即生效:
 source ~/.bashrc
  • 重启 OpenClaw 服务:
    如果您是通过 systemd 或后台进程运行的,请重启服务以加载新的环境变量:
      # 示例:如果是 systemd 服务
   sudo systemctl restart openclaw

🧪 验证结果

再次运行 openclaw logs --follow 并触发一条新消息,观察日志时间戳是否与当前手机/电脑时间一致。

💡 小贴士 TZ=Asia/Shanghai 代表东八区(北京时间)。如果您身处其他时区,请替换为对应的 IANA 时区名称(如
America/New_York)

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐