你讓 AI 幫你做了一個網站,上線後三不五時就 502。你跟 AI 說「網站掛了」,它回你「好的,我來看看」然後改了一些有的沒的,結果還是掛。問題出在哪?
真實案例:「網站一直掛」
最近有朋友問我:
「我用 AI 做的網站,常常會掛掉,重新整理就好了,不知道為什麼。」
這是一個很典型的 vibe coding 情境——東西做出來了,但出問題時不知道怎麼處理。
❌ 錯誤的溝通方式
你:網站掛了,幫我修
AI:好的,我檢查一下程式碼...(改了一些東西)
你:還是會掛
AI:我再調整看看...(又改了一些)
你:🤷♂️這樣會陷入無限迴圈,因為 AI 根本不知道「掛了」是什麼意思。
✅ 正確的溝通方式
第一步:描述具體症狀
不要說「掛了」,要說:
- 錯誤代碼是什麼? → 502 Bad Gateway
- 什麼時候發生? → 用一陣子之後、特定操作後、隨機發生
- 重新整理會好嗎? → 會,過幾秒就恢復
- 有錯誤訊息嗎? → 截圖或複製錯誤內容
第二步:請 AI 加入偵錯機制
這是關鍵!直接告訴 AI:
網站偶爾會回傳 502 錯誤,但我不知道原因。
請幫我:
1. 在所有 API 路由加上 error logging
2. 記錄每個請求的處理時間
3. 如果處理超過 10 秒,要記錄下來
4. 所有錯誤都要 catch 並輸出到 log,不要讓程式直接崩潰第三步:要求 Error Handling
很多 AI 寫的程式碼缺乏錯誤處理,一出錯就整個死掉。明確要求:
請確保所有 async 函數都有 try-catch
任何錯誤都要:
1. 記錄到 console.error(包含時間戳、錯誤內容、請求資訊)
2. 回傳適當的錯誤訊息給前端(不是直接 crash)
3. 不要讓一個請求的錯誤影響整個服務🔍 502 錯誤通常是什麼原因?
讓 AI 知道你的猜測,幫助它縮小範圍:
| 可能原因 | 症狀 | 解法 |
|---|---|---|
| 請求超時 | 處理太久,server 放棄 | 增加 timeout、優化效能 |
| 記憶體爆掉 | 處理大檔案或大量資料 | 加入串流處理、限制大小 |
| 未處理的錯誤 | 某個 edge case 導致 crash | 加入 try-catch |
| 連線池耗盡 | 資料庫連線沒關閉 | 檢查連線管理 |
📝 實用 Prompt 範本
下次遇到類似問題,直接複製這個:
我的網站出現 [具體錯誤,如 502] 錯誤。
症狀:
- 發生頻率:[偶爾/經常/特定操作後]
- 重新整理後:[會恢復/還是錯誤]
- 錯誤訊息:[截圖或文字]
請幫我:
1. 加入完整的 error logging(包含時間、錯誤內容、stack trace)
2. 檢查所有 async 操作是否有 try-catch
3. 加入請求處理時間的監控
4. 確保錯誤不會導致整個服務崩潰
目標是下次出錯時,我能從 log 知道是什麼原因。💡 核心觀念
Vibe coding 不是「叫 AI 做完就沒事」,而是:
- 你是 PM,AI 是工程師 — 你要給清楚的需求,不是丟一句「修好它」
- Debug 靠資訊,不是靠通靈 — 沒有 log 就沒有線索
- 防禦性程式設計 — 一開始就要求 error handling,不是等出事才補
🚀 進階技巧:讓 AI 幫你建立監控
如果你的專案夠重要,可以請 AI 做一個簡單的健康檢查:
幫我加一個 /health 端點,回傳:
- 服務運行時間
- 最近一次錯誤的時間和內容
- 目前的記憶體使用量
- 待處理的請求數
這樣我可以隨時檢查服務狀態。結語
AI 是強大的開發夥伴,但它不會讀心術。
當你的網站出問題,與其說「幫我修」,不如說「幫我找出問題在哪」。
先有 log,再有解法。這個順序不能反過來。
下次網站掛了,先深呼吸,然後打開這篇文章,照著做。