雲端 Mac 支援中心

先定位故障層,再提交可診斷的資訊

連不上、建置失敗或 runner 卡在佇列中,不必從重新安裝環境開始。先依訂單、網路、系統與工具鏈四個層面排查,再將關鍵日誌交給支援人員。

  • 分開診斷 VNC、SSH、Xcode 與 CI/CD
  • 提交訂單編號、節點、時間與完整錯誤上下文
  • 金鑰、權杖與簽署密碼必須從日誌中刪除
診斷工單 BUILD-SUPPORT
開始排查
01
確認交付狀態 訂單、節點位址與憑證來源一致
基礎層
02
區分連線路徑 分別測試 VNC、SSH 與本地網路
網路層
03
縮小建置變數 固定 scheme、Xcode 版本與相依性狀態
工具層
04
保留失敗上下文 記錄時間、指令、日誌與已執行步驟
證據層
目標:讓問題可重現、可定位、可繼續處理 4 層診斷
依問題類型進入

六類支援入口,對應六種排查起點

先判斷問題屬於連線、建置、自動化、網路、儲存空間還是結算。分類準確,能減少在不同日誌之間來回切換。

遠端連線

VNC 畫面與工作階段

處理黑畫面、逾時、鍵盤配置、剪貼簿與工作階段中斷。先保留用戶端名稱、網路出口與發生時間。

Xcode 建置

簽署、相依性與封存

核對憑證、描述檔、Keychain 權限、DerivedData、相依性快取、磁碟剩餘空間與匯出設定。

CI/CD

Runner 佇列與工作目錄

檢查標籤是否相符、服務程序、專案授權、並行數、工作目錄權限,以及失敗工作後的清理動作。

網路

儲存庫、相依性來源與遠端存取

區分本地網路、節點出口、程式碼儲存庫與相依性下載來源,避免將單一服務逾時誤判為整台機器離線。

儲存空間加購

容量評估與擴充諮詢

先統計專案、DerivedData、相依性快取、封存與模型檔案的用量,再諮詢 +1TB、+2TB SSD 或並聯需求。

帳單

週期、附加項目與付款記錄

提供訂單編號、結算週期、付款類別與頁面提示。請勿在公開電郵中提交完整付款憑證或敏感資訊。

七步快速自我檢查

先確認機器可連線,再進入工具鏈

請依序執行。前一步尚未確認前,不要直接清除快取或重新安裝相依性,否則可能覆蓋原始故障線索。

  1. 01

    檢查訂單狀態

    登入控制台確認訂單已交付,機型、週期與節點均與目前排查的對象一致。如訂單資訊異常,先記錄訂單編號與頁面提示。

    訂單層
  2. 02

    核對節點位址

    確認 VNC 與 SSH 使用交付資訊中的位址與連接埠,不要沿用舊節點、舊書籤或其他訂單的連線設定。

    定址層
  3. 03

    確認帳戶憑證

    檢查使用者名稱、密碼輸入與鍵盤大小寫狀態。不要將密碼、私鑰或復原資訊貼到工單正文。

    存取層
  4. 04

    交叉測試 VNC 用戶端

    記錄用戶端名稱、版本與畫質設定。如條件允許,使用另一台本地裝置或另一個網路重新測試,以區分用戶端問題。

    桌面層
  5. 05

    測試 SSH 連線

    記錄 DNS 解析、建立連線與驗證分別停在哪個步驟。VNC 無法連線但 SSH 正常時,通常應優先檢查圖形工作階段,而非整台機器的網路。

    網路層
  6. 06

    檢查磁碟空間

    留意系統磁碟剩餘容量,以及 DerivedData、相依性目錄、封存、模擬器與模型檔案。空間不足可能引發多種不明顯的建置錯誤。

    資源層
  7. 07

    固定 Xcode 版本

    記錄實際選取的 Xcode 路徑與版本,確認 CI 腳本與互動式建置使用相同工具鏈,再重新重現一次失敗指令。

    工具層
遠端存取疑難排解

分開處理畫面、網路與輸入問題

VNC 是圖形工作階段,SSH 是命令列路徑。分別測試兩者,可快速判斷故障位於本地用戶端、網路鏈路還是節點工作階段。

遠端存取常見現象、優先檢查項目與工單資料
現象 先做什麼 需要記錄 不要做什麼
VNC 黑畫面 等待工作階段初始化,重新建立一次連線,並測試 SSH 是否正常回應。 用戶端名稱、發生時間、節點、SSH 測試結果與黑畫面截圖。 不要連續強制重新連線,也不要立即刪除系統或使用者設定。
連線逾時 切換本地網路重新測試,確認位址與連接埠無誤,並區分解析逾時與驗證逾時。 本地網路類型、錯誤原文、開始與失敗時間,以及其他網路的重測結果。 不要在日誌中公開密碼、私鑰或完整驗證內容。
鍵盤配置異常 核對本地與遠端鍵盤配置、輸入法及修飾鍵對應,使用純文字編輯器驗證。 用戶端、鍵盤配置、異常按鍵與可重現步驟。 不要只用 IDE 快捷鍵判斷,先排除應用程式本身的按鍵設定。
剪貼簿無法使用 確認用戶端已允許剪貼簿同步,並分別測試純文字與小段內容。 複製方向、內容類型、用戶端版本,以及是否所有應用程式都失效。 不要使用金鑰、權杖或簽署密碼作為測試內容。
工作階段中斷 記錄中斷前的操作與持續時間,再檢查 SSH 是否仍在線上,以及本地網路是否切換。 精確發生時間、前景應用程式、網路變化、重新連線結果與相關日誌。 不要反覆重新啟動建置工作,以免覆蓋故障發生時的資源狀態。
Xcode 建置故障

從第一個有效錯誤開始,不要從最後一行開始

簽署、快取、磁碟與匯出錯誤經常連鎖出現。固定工具鏈與重現指令後,從日誌中最早出現的明確失敗原因開始排查。

SIGN

憑證與描述檔

確認 bundle identifier、團隊、憑證類型與描述檔用途一致。自動簽署與手動簽署不要在同一目標中混用而不記錄變更。

  • 記錄失敗的 target 與 configuration
  • 核對簽署資產的有效期與適用範圍
  • 保留 codesign 的完整錯誤上下文
KEYCHAIN

Keychain 權限

互動式建置成功、CI 建置失敗時,重點檢查 runner 工作階段能否存取所需簽署項目,以及工作上下文中的權限差異。

  • 比較本地終端機與 runner 的執行使用者
  • 確認工作執行時的鑰匙圈狀態
  • 刪除日誌中的簽署密碼與敏感值
CACHE

DerivedData 與相依性快取

先確認錯誤是否能穩定重現,再針對單一專案清理。不要將清除整個磁碟的快取當作預設動作,否則難以判斷真正失效的快取層。

  • 記錄快取目錄與命中策略
  • 固定 lockfile 與相依性管理工具版本
  • 清理前後各保留一次建置日誌
DISK

磁碟空間

封存、模擬器、相依性與歷史產物會同時佔用空間。空間不足不只會導致寫入失敗,也可能表現為相依性解壓縮或簽署過程異常。

  • 記錄系統磁碟剩餘容量
  • 按專案核對封存與快取用量
  • 清理前確認需要保留的產物
EXPORT

封存與匯出

區分 archive 建立失敗與 export 失敗。前者檢查編譯與簽署,後者重點核對匯出選項、目標渠道與封存中的簽署資訊。

  • 註明 archive 是否成功建立
  • 保留匯出設定與錯誤摘要
  • 確認產物目標與 scheme 一致
REPRO

最小可重現指令

在工單中寫清工作目錄、Xcode 版本、scheme、configuration 與執行指令。若只在 CI 中失敗,同時提供刪除敏感值後的環境差異。

  • 保留錯誤前後至少一段上下文
  • 說明圖形介面建置是否成功
  • 列出已嘗試但無效的步驟
CI runner 疑難排解

標籤決定工作去哪裡,目錄決定失敗後留下什麼

佇列沒有動靜時先看標籤與在線狀態;工作啟動後失敗,再檢查執行使用者、工作目錄、並行數與清理策略。

Runner 核對表

四個變數必須一併記錄

可執行檢查
LABEL 標籤匹配

工作要求的標籤必須與 runner 註冊標籤完全對應,並確認沒有被專案級或分支條件排除。

WORKDIR 工作目錄

目錄應由專用執行使用者讀寫,專案之間避免共用會殘留狀態的暫存路徑。

CONCURRENCY 並行限制

根據記憶體、磁碟與建置類型設定並行數。工作過多時,先判斷是在排隊還是已經爭用資源。

CLEANUP 清理策略

明確每次工作結束後保留及刪除的內容,並為失敗工作保留足夠的日誌與診斷產物。

GitHub Actions

檢查 runs-on 與 runner 群組

確認儲存庫或組織對 runner 的存取範圍、標籤拼寫、服務狀態與工作目錄權限。工作停在等待狀態時,先查看是否存在標籤完全匹配的在線 runner。

GitLab CI

檢查 tags 與專案授權

確認 job tags、runner 鎖定範圍、專案授權與並行設定。若工作已啟動後失敗,補充執行器日誌與專案腳本輸出。

其他 self-hosted runner

固定執行身分與生命週期

說明 runner 軟體、啟動方式、執行使用者、工作目錄與清理腳本。自訂排程器還應記錄工作領取、逾時與退出碼的處理方式。

術語小詞典

八個詞,先統一問題範圍

提交諮詢時使用同一組術語,可以避免將實體資源、遠端協定與自動化軟體混在一起描述。

物理節點
實際交付並執行 macOS 的 Apple Silicon 裝置,不是從共享主機切出的虛擬實例。
獨享
訂單對應的運算、記憶體與本機儲存空間由該使用者使用,不與其他租戶共用同一執行實例。
非虛擬機
系統直接執行在實體裝置上。疑難排解時應按真實 macOS 主機、網路與周邊裝置鏈路理解。
VNC
用於存取 macOS 圖形介面的遠端桌面協定。畫面、輸入與剪貼簿問題通常從用戶端與工作階段層排查。
SSH
用於命令列連線與自動化執行的協定。可協助判斷節點是否在線上,以及圖形工作階段故障是否獨立存在。
self-hosted runner
由團隊部署在雲端 Mac 上、接收 CI 平台工作的執行程式,標籤與專案權限由團隊自行設定。
建置快取
為減少重複下載與編譯而保留的相依性或中間產物。快取必須具備版本鍵、容量上限與清理策略。
並聯
針對適用工作諮詢多台裝置或 Thunderbolt 5 連線方式。這不代表所有建置工具都會自動獲得線性加速。
提交工單規範

讓支援人員取得資訊後即可開始診斷

工單的價值不在文字長度,而在時間、對象、重現步驟與原始錯誤是否完整。

工單資料清單 DIAGNOSTIC PACK
提交前檢查
01

訂單編號與節點

寫明發生問題的訂單編號,以及新加坡、東京、首爾或香港中的實際節點。多台機器需分別標註。

02

重現時間

提供包含時區的發生時間與持續時間。若問題反覆出現,列出最近兩至三次的時間點。

03

錯誤日誌

保留錯誤前後的上下文、執行指令與退出碼。截圖可輔助說明,但不要用截圖取代可複製的日誌文字。

04

已執行步驟

依序列出已檢查、修改與重新測試的內容,並註明每一步結果,避免支援人員要求重複操作。

05

預期結果與實際結果

說明原本希望完成什麼,以及目前停在哪個階段。建置問題需註明 scheme、Xcode 版本與執行方式。

提交前移除敏感資訊

刪除所有驗證資料

從日誌、截圖與設定片段中刪除密碼、私鑰、存取權杖、簽署密碼、付款憑證及其他可用於登入或授權的內容。

服務升級流程

不同問題,進入不同處理佇列

選對入口比重複催問更有效。硬體與連線問題需要關聯訂單,一般使用諮詢與企業需求則適合先整理使用情境。

諮詢

使用與選型諮詢

適合詢問 Xcode 版本、CI 遷移、並行規模、儲存需求與三檔配置選擇。

前往聯絡頁
連線

VNC 或 SSH 故障

完成本頁快速自我檢查後,帶上訂單編號、節點、發生時間與交叉測試結果,提交控制台工單。

提交連線故障工單
硬體

疑似物理節點異常

若 VNC 與 SSH 均無法連線,或存在可重現的磁碟、網路或裝置異常,請停止重複工作並保留時間點與日誌。

提交硬體異常工單
帳單

訂單與結算問題

提供訂單編號、週期、付款類別與頁面提示。實際可用的付款閘道以控制台即時返回結果為準。

提交帳單工單

準備好執行下一次建置了嗎?

選擇 Go M4 Core、Go M4 Plus 或 Go M4 Pro,在四個銷售中的節點完成配置。實際可用狀態以控制台即時返回結果為準。