Convex
連接
從終端機連接Convex。傳入--help可查看Convex接受的旗標,在無瀏覽器環境中再加上--no-browser。
polylane cloud connect --provider convex來自你Convex儀表板的團隊存取權杖。
Convex以在Convex儀表板中建立的團隊存取權杖連接。團隊存取權杖的範圍恰好是一個團隊,所以一個權杖連接一個團隊。權杖在儲存前會先加密,代理永遠看不到它們。
- 開啟Convex dashboard,前往Team Settings → Access Tokens。
- 點擊Create access token並複製權杖的值。
- 把權杖貼到Polylane。
- Polylane驗證權杖並開始同步。
Polylane會探索你的專案,以及每個專案中的雲端部署:生產部署加上任何預覽、開發與自訂部署,含它們的區域、URL與部署類別。
團隊存取權杖授予對團隊的管理存取。同步用團隊權杖讀取你的專案與部署。當代理或背景監控讀取某個部署的函式日誌或指標時,Polylane會鑄造一把範圍只限於該次讀取(日誌檢視或指標檢視)的短效部署金鑰,用它進行那一次呼叫,並在之後立即刪除,所以每把金鑰的存活時間只與它服務的讀取一樣長。Polylane讀取的一切都位於管理層面:專案與部署清單、函式日誌,以及部署指標。
疑難排解
「Not a team access token」錯誤
- 專案範圍的權杖與部署金鑰無法列出團隊的專案;請在Team Settings → Access Tokens底下建立權杖。
- 檢查該權杖是否已在Convex儀表板中被刪除。
缺少資源
- 本機部署在個別開發者的機器上執行,刻意不同步。
- 在沒有部署的情況下建立的專案,在第一次部署前不會顯示任何部署。
- 觸發手動同步,比下一次排程更早重新整理。
稽核日誌
- Convex把它的稽核日誌API限制在付費方案。在免費團隊上,稽核日誌讀取會回傳清楚的錯誤,代理則退回使用函式日誌與情境圖。
中斷連接
在Polylane中斷該帳戶的連接,然後從你的Convex團隊設定刪除該存取權杖。
從CI工作或任何其他沒有瀏覽器的環境連接Convex。
連接Convex不需要瀏覽器:主控台呼叫的同一個端點可以放進CI工作。一次經過驗證的POST建立連接並開始第一次同步。
先決條件
- 一把具有
cloud_accounts:write與cloud_accounts:read範圍的Polylane API金鑰。請見API金鑰與OAuth。 - 你的工作區ID,以
ws_開頭。用同一把金鑰從GET /v1/workspaces讀取它。 - 一個來自Team Settings → Access Tokens的Convex團隊存取權杖。
建立連接
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "convex",
"workspaceId": "ws_0abc123",
"token": "<team-access-token>"
}'
團隊存取權杖的範圍恰好是一個團隊,所以一次呼叫連接一個團隊。
回應列出已連接的內容,第一次同步已在執行。精簡為流程其餘部分會讀取的兩個欄位:
{
"success": true,
"result": {
"provider": "convex",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
已經連接的帳戶會落在failures而不是accounts中,所以重複呼叫永遠不會重複建立連接。
等待第一次同步
依id輪詢每個回傳的帳戶,直到status達到ready(註冊時為new,資源串流進來時為syncing):
until [ "$(curl -s "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY" | jq -r '.result.status')" = "ready" ]; do
sleep 15
done
給這個迴圈一個期限,讓失敗的連接讓工作失敗,而不是掛住它。帳戶為ready後,它的資源就在拓樸中,Polylane也已開始第一次檢查。
從API中斷連接
刪除連接會停止所有同步與檢查,並刪除Polylane持有的憑證。這個呼叫需要cloud_accounts:delete範圍:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
然後如下方中斷連接一節所述,在供應商端撤銷Convex憑證。
中斷連接
中斷連接會停止所有同步與檢查,並刪除Polylane持有的憑證。 Polylane在Convex中建立的一切也會一併移除;不會留下任何東西。
polylane cloud disconnect <id>工具
3代理可以在對話串中執行的操作。
支援的資源
2會出現在你基礎設施圖中的資源類型。