發布錯誤而家會以淺白文字講清楚發生咗乜嘢
Mythex 發布失敗時,對話框而家會用一句淺白嘅說話,講清楚發生咗乜嘢,例如構建失敗、你個 app 啟動後即刻停咗、個 app 冇能夠啟動、檔案太大,或者我哋呢邊出咗問題,並提供 Fix with AI 同 Try again。構建同 app 輸出嘅原始內容仍然會送到代理手上,所以 Fix with AI 可以讀取並修正項目;但你唔使再自己去讀嗰啲原始內容。
有咩改變
一句你可以採取行動嘅說明
每次發布失敗而家都會有一個類型,喺失敗嗰一刻就根據當時手上嘅事實決定,例如邊個步驟失敗、app 嘅機器有冇回報崩潰、佢有冇曾經開始接受連線,而唔係事後再睇錯誤文字。每個類型都有自己嘅訊息:
| 你會見到嘅訊息 | 意思 |
|---|---|
| 「構建失敗。」 | 你項目嘅構建指令或者 Dockerfile 冇辦法構建。 |
| 「你個 app 啟動後即刻停咗。」 | 已經發布,然後退出咗,或者不斷重新啟動。 |
| 「你個 app 發布後冇啟動。」 | 已經發布,但始終冇開始接受連線。 |
| 「呢個檔案太大」/ 檔案太多 | 靜態網站超過每個檔案嘅大小或檔案數目上限。訊息會列出嗰啲檔案。 |
| 「呢個連結名稱無法用於發布。」 | 更改連結名稱然後再發布;你嘅代碼冇問題。 |
| 「發布服務暫時繁忙」 | 你個 app 冇問題。幾分鐘後再發布。 |
| 「……我哋呢邊嘅問題,唔係你個 app 嘅問題。」 | 由我哋負責處理。幾分鐘後再發布。 |
每次失敗都有 Fix with AI
每次失敗都會顯示 Fix with AI 同 Try again。當你使用 Fix with AI,代理會私下收到失敗類型,以及完整嘅構建或 app 輸出,放喺佢自己嘅上下文入面。如果你個 app 有問題,佢就會修正;如果冇問題,例如發布服務繁忙或者我哋呢邊出咗問題,佢就可以直接再發布一次。你唔使自己分辨係邊種失敗。
上線後嘅問題
發布可以成功,但 app 幾分鐘之後先失敗。Mythex 會定期檢查已發布嘅 app。如果一個上線中嘅 app 持續崩潰,或者持續運行但停止接受連線,發布就會標記為失敗,你會收到電郵,而項目會顯示該訊息同 Fix with AI。app 印出嘅內容會被儲存,俾代理閱讀。
上傳前檢查大小限制
對靜態網站,每個檔案嘅大小同檔案總數,都會喺上傳任何嘢之前檢查。如果有任何超過限制,你會收到一條訊息,列出所有太大嘅檔案,而唔係喺中途失敗。
點解我哋要做
以前,發布失敗時會顯示負責發布嘅工具所印出嘅任何內容。九月底嘅某一個星期,大部分失敗都向構建者顯示屬於我哋範圍嘅文字:計費聯絡人、內部版本號碼、registry 路徑、儲存錯誤。Fix with AI 就會將同一段文字貼入對話。咁樣等於要人哋去除我哋基礎設施嘅錯誤。
而且其中有啲內容根本係錯嘅。一個從來冇喺自己端口上聽嘅 app,被報告為「我哋呢邊嘅問題」,但修正其實喺 app 入面。一個超過大小限制嘅靜態檔案,亦會以同樣方式被報告,但再發布永遠都唔會成功。
Mythex 入面每一個對失敗作出反應嘅部分,例如對話框、通知、Fix with AI,以及我哋自己嘅警報,以前都係透過比對錯誤文字中嘅字詞,去判斷發生咗乜嘢。咁樣一旦措辭改變,就會壞。而家失敗類型會喺失敗發生嘅地方記錄下來,其他所有部分都只係讀取呢個類型。
我哋喺處理期間,亦將同一規則應用到其他錯誤上:
- 對話。 如果回覆串流期間連線中斷,你會見到我哋嘅句子,而唔係瀏覽器嘅「Load failed」或者「Failed to fetch」。
- 自訂網域。 有關購買或連接網域嘅訊息,而家會根據回應嘅狀態同代碼來挑選,而唔係直接轉交網域供應商自己嘅句子。
- 圖片生成。 卡片會顯示我哋嘅訊息;代理則會收到服務嘅詳細資料。
點樣使用
- 照常透過發布按鈕發布。
- 如果失敗,請閱讀對話框中嘅一行訊息。
- 撳 Fix with AI。代理會讀取構建輸出或你個 app 嘅日誌,修正有問題嘅地方,如果 app 冇需要修正,就會再發布。
- 或者撳 Try again,再次發布同一個版本。對於「暫時繁忙」同「我哋呢邊嘅問題」,呢個係正確嘅選擇。
- 如果訊息係關於連結名稱,請喺再次發布之前更改連結名稱。如果係其他錯誤,就保持同一個名稱。
限制
- 某些失敗會顯示不同嘅按鈕:連結名稱已被使用,會建議其他名稱;credits 用完,則會提供增加 credits 嘅方法。
- 靜態網站每個檔案嘅上限大約係 25 至 30 MB,視乎網站類型而定,而檔案數目上限係 20,000。大檔案最好放喺 storage 入面,然後連結過去。
- 呢個改動之前嘅失敗發布冇類型,所以會顯示一行中性嘅訊息,而唔係具體原因。
- 如果「我哋呢邊嘅問題」持續出現,請連同項目 ID 同連結名稱聯絡支援。
所有訊息同每個訊息嘅處理方法,都完整列在發布疑難排解。如果你要親手修正一個頑固嘅 app,我哋嘅指南點樣為 AI 建構嘅 app 除錯會逐步教你。至於重新發布時,已上線嘅網站會發生咩事,請睇你已發布嘅 app 而家重新發布時仍然保持運行。