Turso
Bağla
Turso hesabını terminalden bağla. Turso hesabının kabul ettiği bayraklar için --help, başsız ortamlar için ayrıca --no-browser geç.
polylane cloud connect --provider tursoTurso hesap ayarlarından veya Turso CLI'den bir platform API tokenı.
Turso bir platform API tokenıyla bağlanır:
- Turso'yu aç, hesap ayarlarının API Tokens sayfasına git ya da CLI'den
turso auth api-tokens mint polylaneçalıştır. - Platform API tokenını kopyala.
- Tokenı Polylane'e yapıştır. Token birden fazla organizasyona ulaşabiliyorsa sorulduğunda bağlanacak olanı seç.
- Polylane tokenı doğrular ve eşitlemeye başlar.
Her bağlantı tek bir Turso organizasyonunu kapsar. Polylane veritabanı gruplarını ve veritabanlarını konumlar, yerleşim, dallanma kökeni ve okuma/yazma durumu dahil keşfeder. Tokenlar saklanmadan önce şifrelenir ve ajan onları asla görmez. Polylane yalnızca Platform API'yi okur; veritabanlarına asla bağlanmaz ve asla veritabanı kimlik bilgisi tutmaz.
Turso'nun Platform API'si kullanımı zaman serisi yerine birikimli faturalandırma dönemi sayaçları olarak bildirir, bu yüzden veritabanları metrik grafiği taşımaz. İzleme bu sayaçları yoklar ve bunun yerine farkları izler: okuma ve yazma hacmi, eşitleme trafiği, depolama büyümesi, veritabanı sayısı, planına karşı kota tüketimi ve veritabanı başına en ağır sorgular, her biri hesabın kendi geçmişine karşı kontrol edilir.
Sorun giderme
"Invalid Turso API token" hatası
- Platform API tokenları veritabanı kimlik doğrulama tokenlarından farklıdır;
turso auth api-tokens mintile veya hesap ayarlarından bir tane bas. - Tokenın Turso ayarlarında iptal edilmediğini kontrol et.
"Multiple Turso organizations are reachable" hatası
- Token birden fazla organizasyona ulaşabiliyor, bu yüzden bağlanacak olanı adlandır.
- Konsolda bağlanırken, doğrulamadan sonra sorulduğunda organizasyonu seç.
- API ile bağlanırken
organizationalanını organizasyon slug'ına ayarla.
Eksik kaynaklar
- Turso'nun her şeyi eşitlemesi birkaç dakika sürebilir.
- Yenilemek için hesap başlığından elle bir Sync tetikle.
Bağlantıyı kesme
Hesabın Polylane ile bağlantısını kes, sonra API tokenını Turso hesap ayarlarından veya turso auth api-tokens revoke ile iptal et.
Turso hesabını bir CI işinden veya tarayıcısı olmayan başka herhangi bir ortamdan bağla.
Turso'yu bağlamak tarayıcı gerektirmez: konsolun çağırdığı aynı uç nokta bir CI işine sığar. Kimliği doğrulanmış tek bir POST bağlantıyı oluşturur ve ilk eşitlemeyi başlatır.
Ön koşullar
cloud_accounts:writevecloud_accounts:readkapsamlı bir Polylane API anahtarı. Bkz. API anahtarları ve OAuth.ws_ile başlayan çalışma alanı kimliğin. Aynı anahtarlaGET /v1/workspacesüzerinden oku.- Hesap ayarlarından veya
turso auth api-tokens mint polylaneile basılmış bir Turso platform API tokenı.
Bağlantıyı oluştur
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "turso",
"workspaceId": "ws_0abc123",
"token": "<platform-api-token>",
"organization": "my-org-slug"
}'
Tek çağrı bir Turso organizasyonu bağlar.
organizationyalnızca token tam olarak tek bir organizasyona ulaşıyorsa atlanabilir; aksi halde çağrı, ulaşılabilir organizasyon slug'larını listeleyen bir400ile başarısız olur.
Yanıt, ilk eşitleme zaten çalışıyor halde neyin bağlandığını listeler. Akışın geri kalanının okuduğu iki alana kırpılmış hali:
{
"success": true,
"result": {
"provider": "turso",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
Zaten bağlı olan bir hesap accounts yerine failures içine düşer, bu yüzden çağrıyı yinelemek asla bir bağlantıyı çoğaltmaz.
İlk eşitlemeyi bekle
Döndürülen her hesabı id değeriyle, status değeri ready olana kadar yokla (kayıtta new, kaynaklar akarken 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
Başarısız bir bağlama işi askıda bırakmak yerine başarısız kılsın diye döngüye bir son tarih ver. Hesap ready olduğunda kaynakları topolojidedir ve Polylane ilk kontrolünü başlatmıştır.
API'den bağlantıyı kes
Bağlantıyı silmek her eşitlemeyi ve kontrolü durdurur ve Polylane'in tuttuğu kimlik bilgilerini siler. Çağrı cloud_accounts:delete kapsamını gerektirir:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
Sonra Turso kimlik bilgisini, aşağıda Bağlantıyı kesme altında anlatıldığı gibi sağlayıcı tarafında iptal et.
Bağlantıyı kes
Bağlantıyı kesmek her eşitlemeyi ve kontrolü durdurur ve Polylane'in tuttuğu kimlik bilgilerini siler. Polylane'in Turso içinde kurduğu her şey de kaldırılır; geride hiçbir şey kalmaz.
polylane cloud disconnect <id>Desteklenen kaynaklar
2Altyapı grafiğinde görünen kaynak türleri.