Er ya da geç her BI ekibi bu soruyu alır — bir denetçiden, bir güvenlik incelemesinden ya da yeni bir CIO’dan: “Power BI’da tam olarak neyimiz var?”Kaç workspace, hangi raporlar, kimin semantic model’leri, hangi veri kaynaklarına bağlı, kimlerle paylaşılmış. Çoğu tenant bunu yanıtlayamaz, çünkü Power BI’ın kendisi tüm ortamı hiçbir zaman tek yerde göstermez.
Gerçek bir envanter neleri kapsamalı?
- Workspace’ler — üyesi olmadığınız, yalnızca admin’in gördükleri ve (genellikle devasa) kişisel “My Workspace” yığını dahil.
- Raporlar — standart ve sayfalandırılmış; yayımlandıkları workspace ve uygulama bilgisiyle.
- Semantic model’ler — sahibi, yenileme zamanlaması, yenilenebilirliği.
- Uygulamalar ve hedef kitleleri — içeriğin gerçekte kimlerle paylaşıldığı.
- Kapasiteler — hangi workspace’in hangi SKU üzerinde çalıştığı.
- Veri kaynakları — her model’in gerçekte neye bağlandığı (lineage katmanı).
Yöntem 1 — Admin portalı
Fabric admin portalı workspace’leri tenant genelinde listeler ve CSV olarak dışa aktarır. En hızlı ilk bakıştır, ama workspace düzeyinde durur: rapor listesi yok, model detayı yok, veri kaynağı yok, kullanım yok. Bunu envanter değil, sayım olarak görün.
Yöntem 2 — PowerShell ve admin REST API’leri
Admin cmdlet’leri ve REST uç noktaları çok daha derine iner — her workspace ve içeriği, tenant genelinde rapor ve uygulama katalogları:
Login-PowerBI # admin hesabı veya service principal
# Tenant'taki her workspace, içinde olmadıklarınız dahil
Get-PowerBIWorkspace -Scope Organization -All
# Tenant genelinde rapor kataloğu (REST, $top ile sayfalanır)
Invoke-PowerBIRestMethod -Method Get -Url "admin/reports?`$top=5000"Yöntem 3 — Scanner (metadata) API’si
Ölçekli ve derin metadata için Microsoft scanner API’sini sunar: en fazla 100 workspace’lik gruplar gönderir, taramanın bitmesini beklersiniz ve model tabloları ile veri kaynakları dahil ayrıntılı metadata alırsınız; sonraki taramalar için “şu tarihten beri değişenler” modu vardır. Elle kurulabilecek en eksiksiz temeldir ve aynı zamanda en çok iş çıkarandır: gruplama, bekleme, artımlı kayıt tutma ve şema değişiklikleriyle uğraşan, bakımı size ait durumlu bir veri hattı.
Denetim açısı: envanterin geçmişe ihtiyacı var
Bir denetçi nadiren yalnızca “bugün ne var?” diye sorar. Devamı şudur: “bu ne zaman ortaya çıktı?”, “mart ayında kimler görebiliyordu?”, “bu workspace neden kayboldu?”. Anlık dışa aktarımlar bunları yanıtlayamaz — değişiklikleri zaman içinde kaydeden ve silmeleri yok saymak yerine işaretleyen bir kataloğa ihtiyacınız var.
Sürekli bir katalog ne ekler?
PGR Sonar tüm ortamı programlı olarak senkronize eder: workspace’ler (üye ve admin düzeyinde, kişisel olanlar etiketlenmiş hâlde), raporlar, yenileme zamanlamalarıyla semantic model’ler, erişim listeleriyle uygulamalar, kapasiteler ve veri kaynağı lineage’ı. Silinen öğeler atılmak yerine işaretlenir; böylece katalog “son denetimden bu yana ne değişti” sorusunu yanıtlamayı sürdürür — ve kullanım ile yenileme geçmişi aynı depoda durduğu için envanter, içeriğin yalnızca var olduğuna değil, gerçekte nasıl davrandığına da bağlanır.