Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Çalışma zamanını başlatmadan Bir Data API builder yapılandırma dosyasını doğrulayın. Bir dizi denetim (şema, yapı, izinler, bağlantı, meta veriler) çalıştırır ve başarı (0) veya başarısızlık (sıfır olmayan) için bir çıkış kodu döndürür. CI/CD işlem hatlarında kullanışlıdır.
Sözdizimi
dab validate [options]
Hızlı bakış
| Seçenek | Özet |
|---|---|
-c, --config |
Yapılandırma dosyasının yolu. Varsayılan olarak ortama özgü veya dab-config.jsonşeklindedir. |
Uyarı
validate dışında --confighiçbir bayrak kabul etmemektedir.
Çıkış Kodları
| Kod | Meaning |
|---|---|
| 0 | Yapılandırma tüm aşamaları geçti. |
| sıfır olmayan | Bir veya daha fazla aşama başarısız oldu. Ayrıntılar için günlüklere bakın. |
CI örneği:
dab validate && echo "OK" || { echo "INVALID CONFIG"; exit 1; }
-c, --config
Yapılandırma dosyasının yolu. Belirtilmezse, doğrulayıcı önce öğesini, sonra öğesini dab-config.jsonarardab-config.<DAB_ENVIRONMENT>.json.
Example
dab validate --config ./dab-config.prod.json
Doğrulama Aşamaları
Doğrulama sırayla gerçekleşir. Bir aşama başarısız olursa, sonraki aşamalar atlanır.
1. Şema
Yapılandırma JSON'unun şemayla eşleşerek eşleşmediğini denetler.
Kurallar
-
$schemaulaşılabilir veya yapısal olarak geçerli -
data-source,runtimeveentitiesbölümleri vardır ve iyi biçimlendirilmişlerdir - İzin verilmeyen beklenmeyen özellikler (şema başına)
- Sabit listesi değerleri (gibi
database-type) geçerlidir
Hatalar ve Düzeltmeler
| Sorun | Example | Düzelt |
|---|---|---|
| Yanlış yazılmış özellik | "conn-string" |
"connection-string"kullanın. |
| Geçersiz sabit listesi | "database-type": "mydb" |
Desteklenen değerleri kullanın. |
| Yanlış şekil |
entities dizi olarak |
Varlık adlarının anahtarladığı nesneyi kullanın. |
2. Yapılandırma Özellikleri
Şemanın ötesinde tutarlılığı denetler.
Kurallar
- Sağlanan geçerli
database-type - için
cosmosdb_nosqlveritabanı ve GraphQL şema yolu gereklidir. Varlıklara bağlı olarak bir kapsayıcı da gerekebilir. REST ayarları yoksayılır. - En az bir uç nokta (REST, GraphQL, MCP) etkinleştirilmelidir
- REST/GraphQL yolları ile
/başlar ve harmanlanmaz - Eski
*.disabledbayraklar uyarıları yayar ancak başarısız olmaz - JWT kullanılıyorsa hem veren hem de hedef kitle ayarlanmalıdır
Hatalar ve Düzeltmeler
| Sorun | Example | Düzelt |
|---|---|---|
| Tüm uç noktalar kapalı | REST=false, GraphQL=false, MCP=false | Birini yeniden etkinleştirin. |
| Cosmos DB şeması eksik | Hayır graphql-schema |
Şema yolunu belirtin. |
| Kimlik doğrulaması uyuşmazlığı | Veren kümesi, izleyici eksik | Her ikisini de veya hiçbirini sağlayın. |
3. İzinler
Her varlığın izinlerinin geçerli olup olmadığını denetler.
Kurallar
Her girişin boş olmayan bir rolü vardır
Eylemler geçerli olmalıdır:
- Tablolar/görünümler:
create, read, update, delete, * - Depolanan procs:
execute, *
- Tablolar/görünümler:
Boş eylem listesi yok
Tek bir eylem kümesi, her ikisi de
*değil, YA DA açık eylemler olmalıdır
Hatalar ve Düzeltmeler
| Sorun | Example | Düzelt |
|---|---|---|
| Desteklenmeyen eylem | "drop" |
vb. kullanın read. |
| CRUD ile SP | Depolanan proc kullanımları update |
execute veya * kullanın. |
| Boş liste | "actions": [] |
Eylemleri sağlayın. |
4. Veritabanı Bağlantısı
Veritabanı bağlantısının çalışıp çalışmadığını denetler.
Kurallar
- Bağlantı dizesi ayrıştırılabilir
- Kimlik bilgileri geçerli
- Veritabanı/kapsayıcı var
Hatalar ve Düzeltmeler
| Sorun | Example | Düzelt |
|---|---|---|
| Zaman Aşımı | Sunucuya ulaşılamıyor | Ağı/güvenlik duvarını denetleyin. |
| Hatalı oturum açma | Kimlik doğrulaması başarısız oldu | Kullanıcı adı/parola düzeltildi. |
| Eksik VERITABANı | Veritabanı bulunamadı | VERITABANı veya güncelleştirme yapılandırması oluşturun. |
5. Varlık Meta Verileri
Varlık tanımlarını veritabanında denetler.
Kurallar
- Kaynak nesne var
- Tablolar/görünümler: geçerli, dahil edilen/hariç tutulan önemli alanlar var
- Görünümler her zaman gereklidir
source.key-fields - Saklı yordamlar: parametreler imzayla eşleşiyor
- İlişkiler: hedef varlık var, bağlantı alanları anahtarlarla hizalanır; linking.object çoka çok için mevcut olmalıdır
- İlkeler geçerli alanlara başvurur
- TTL'yi negatif olmayan önbelleğe alma
Hatalar ve Düzeltmeler
| Sorun | Example | Düzelt |
|---|---|---|
| Eksik anahtar alanları | Görüntüleme olmadan key-fields |
ekleyin source.key-fields. |
| Hatalı sütun |
fields.include listelerde eksik sütun |
Adı kaldırın veya düzeltin. |
| İlişki uyuşmazlığı | Alan sayısı bağlanıyor != PK sayısı | Alanları bağlamayı düzeltin. |
Çıkış Örnekleri
Başarı:
Data API builder <version>
Config is valid.
Başarısızlık:
Data API builder <version>
Error: View 'sales_summary' missing required key-fields.
Config is invalid.
Uyarı
Doğrulama hataları aşamaya özeldir. Yeniden çalıştırmadan önce ilk başarısız aşamayı düzeltin.
dosyaları Environment-Specific
ayarlanırsa DAB_ENVIRONMENT , validate yükler dab-config.<DAB_ENVIRONMENT>.json.
Example
DAB_ENVIRONMENT=Staging dab validate
Uyarı
Doğrulayıcı yalnızca tek bir çözümlenmiş dosyayı denetler. Ortam değişkenlerini birleştirmez.
Örnek Kullanım
Temel:
dab validate
Açık dosya:
dab validate --config ./configs/dab-config.test.json
Çok ortamlı:
for env in Development Staging Production; do
echo "Validating $env..."
DAB_ENVIRONMENT=$env dab validate || exit 1
done
CI hızlı başarısız:
dab validate && echo "OK" || { echo "INVALID CONFIG"; exit 1; }
Workflow
-
dab validatekomutunu çalıştırın - İlk başarısız aşamayı düzeltme
- Çıkış kodu 0 olana kadar yeniden çalıştırma
- Doğrulanmış yapılandırmayı işleme
İpucu
Küçük değişiklikleri sık sık doğrulayın. Regresyonları hızla saptamak için sürüm denetimi farklarını kullanın.