Skip to content

Translation 🌍

You can translate or improve the translation of this page.

Contribute

记录

CLI 会在内部记录信息,以帮助您诊断问题。

使用日志诊断问题

如果命令调用没有产生预期结果,可以通过检查日志来诊断问题。CLI 会将日志转发到 OSLog 和文件系统。

每次运行都会在$XDG_STATE_HOME/tuist/logs/{uuid}.log 下创建日志文件,其中$XDG_STATE_HOME 的值为~/.local/state (如果未设置环境变量)。也可以使用$TUIST_XDG_STATE_HOME 设置 Tuist 特有的状态目录,其优先级高于$XDG_STATE_HOME

TIP

有关 Tuist 目录组织以及如何配置自定义目录的更多信息,请参阅 目录文档

默认情况下,CLI 会在执行意外退出时输出日志路径。如果没有,则可在上述路径(即最近的日志文件)中找到日志。

:: 警告

敏感信息不会被编辑,因此在共享日志时要谨慎。

:::

持续集成

在 CI 中,环境是一次性的,您可能希望将 CI 管道配置为导出 Tuist 日志。导出工件是 CI 服务的一项通用功能,配置取决于您使用的服务。例如,在 GitHub Actions 中,可以使用actions/upload-artifact 操作将日志作为工件上传:

yaml
name: Node CI

on: [push]

env:
  TUIST_XDG_STATE_HOME: /tmp

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
      # ... other steps
      - run: tuist generate
      # ... do something with the project
      - name: Export Tuist logs
        if: failure()
        uses: actions/upload-artifact@v4
        with:
          name: tuist-logs
          path: /tmp/tuist/logs/*.log

缓存守护进程调试

为调试与缓存相关的问题,Tuist 使用os_log 和子系统dev.tuist.cache 记录缓存守护进程的操作。您可以使用以下方式实时流式传输这些日志:

bash
log stream --predicate 'subsystem == "dev.tuist.cache"' --debug

通过过滤dev.tuist.cache 子系统,在 Console.app 中也能看到这些日志。这提供了有关缓存操作的详细信息,有助于诊断缓存上传、下载和通信问题。

Released under the MIT License.