Ekli uygulamanızın sorunlarını giderme
Bu makalede, Power BI'dan içerik eklenirken ortaya çıkabilecek bazı yaygın sorunlar ele alınmaktadır.
Sorun giderme araçları
Fiddler İzlemesi
Fiddler , Telerik'in HTTP trafiğini izleyen ücretsiz bir aracıdır. İstemci makinesinden Power BI API'leriyle trafiği görebilirsiniz. Bu araç hataları ve diğer ilgili bilgileri gösterebilir.
Ön uç hata ayıklaması için Tarayıcıda F12
F12 anahtarı, tarayıcınızda geliştirici penceresini başlatır. Bu araç, ağ trafiğine bakmanızı ve diğer değerli bilgileri görmenizi sağlar.
Power BI yanıtından hata ayrıntılarını ayıklama
Bu kod parçacığı, bir HTTP özel durumdan hata ayrıntılarını ayıklamayı gösterir:
public static string GetExceptionText(this HttpOperationException exc)
{
var errorText = string.Format("Request: {0}\r\nStatus: {1} ({2})\r\nResponse: {3}",
exc.Request.Content, exc.Response.StatusCode, (int)exc.Response.StatusCode, exc.Response.Content);
if (exc.Response.Headers.ContainsKey("RequestId"))
{
var requestId = exc.Response.Headers["RequestId"].FirstOrDefault();
errorText += string.Format("\r\nRequestId: {0}", requestId);
}
return errorText;
}
İstek Kimliğini (ve sorun giderme için hata ayrıntılarını) günlüğe kaydetmenizi öneririz. Microsoft desteğine yaklaşırken İstek Kimliğini belirtin.
Uygulama kaydı
Uygulama kaydı hatası
Azure portalında veya Power BI uygulama kaydı sayfasında hata iletileri, uygulamanızı kaydetmek için yeterli ayrıcalığınız yoksa sizi bilgilendirir. Bir uygulamayı kaydetmek için Microsoft Entra kiracısında yönetici olmanız veya yönetici olmayan kullanıcılar için uygulama kayıtlarının etkinleştirilmesi gerekir.
yeni bir uygulama kaydederken Power BI hizmeti Azure portalında görünmüyor
Power BI'a en az bir kullanıcının kaydolması gerekir. API listesinde Power BI hizmeti görmüyorsanız, hiçbir kullanıcı Power BI'a kaydolmaz.
Uygulama nesne kimliği ile asıl nesne kimliği arasındaki fark nedir?
Bir Microsoft Entra uygulamasını kaydettiğinizde nesne kimliği adlı iki parametre vardır. Bu bölümde her parametrenin amacı ve nasıl edinilen açıklanır.
Uygulama nesne kimliği
Yalnızca nesne kimliği olarak da bilinen uygulama nesne kimliği, Microsoft Entra uygulama nesnenizin benzersiz kimliğidir.
Uygulama nesne kimliğini almak için Microsoft Entra uygulamanıza gidin ve Genel Bakış'tan kopyalayın.
Asıl nesne kimliği
Yalnızca nesne kimliği olarak da bilinen asıl nesne kimliği, Microsoft Entra uygulamanızla ilişkili hizmet sorumlusu nesnesinin benzersiz kimliğidir.
Asıl nesne kimliğinizi almak için Microsoft Entra uygulamanıza gidin ve Genel Bakış'tan Yerel dizindeki Yönetilen uygulama'daki uygulama bağlantısını seçin.
Özellikler bölümünden Nesne Kimliğini kopyalayın.
Kimlik Doğrulaması
Kimlik doğrulaması AADSTS70002 veya AADSTS50053 hatasıyla başarısız oldu
(AADSTS70002: Kimlik bilgileri doğrulanırken hata oluştu. AADSTS50053: Yanlış kullanıcı kimliği veya parolayla çok fazla oturum açmayı denediniz)
Power BI Embedded ve Microsoft Entra doğrudan kimlik doğrulamasını kullanıyorsanız, doğrudan kimlik doğrulaması etkinleştirilmediğinden oturum açmaya çalıştığınızda önceki iletiye benzer bir ileti alabilirsiniz.
Kuruluş kapsamındaki bir Microsoft Entra ilkesini veya hizmet sorumlusunu kullanarak doğrudan kimlik doğrulamasını yeniden açabilirsiniz.
Bu ilkeyi yalnızca uygulama bazında etkinleştirmenizi öneririz.
Bu ilkeyi oluşturmak için, ilkeyi oluşturup atadığınız dizin için Genel Yönetici istratörü olmanız gerekir. İlkeyi oluşturmak ve bu uygulama için SP'ye atamak için örnek bir betik aşağıda verilmiştir:
Aşağıdaki PowerShell komutlarını satır satır çalıştırın (değişkenin
$sp
sonuç olarak birden fazla uygulaması olmadığından emin olun).Connect-MgGraph -Scopes "Directory.Read.All","Policy.ReadWrite.ApplicationConfiguration" $sp = Get-MgServicePrincipal -Filter "DisplayName eq 'Name_Of_Application'" $policy = New-MgBetaPolicyActivityBasedTimeoutPolicy -Definition @("{`"AllowCloudPasswordValidation`":true}") ` -DisplayName EnableDirectAuth -IsOrganizationDefault:$false $params = @{ "@odata.id" = "https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies/$policy.Id" } New-MgBetaServicePrincipalClaimMappingPolicyByRef -ServicePrincipalId $sp.Id ` -BodyParameter $params
İlkeyi atadıktan sonra, test etmeden önce yayma için yaklaşık 15-20 saniye bekleyin.
Etkin kimlik sağlanırken belirteç oluşturma işlemi başarısız oluyor
GenerateToken
birkaç farklı nedenden dolayı sağlanan etkili kimlikle başarısız olabilir:
- Anlam modeli etkin kimliği desteklemez.
- Kullanıcı adı sağlanmadı.
- Rol sağlanmadı.
DatasetId
sağlanmadı.- Kullanıcının doğru izinleri yok.
Sorunu belirlemek için aşağıdaki adımları deneyin:
- Get veri kümesini çalıştırın. Özellik
IsEffectiveIdentityRequired
doğru mu? - Herhangi bir
EffectiveIdentity
için kullanıcı adı gereklidir. IsEffectiveIdentityRolesRequired
True ise Rol gereklidir.DatasetId
herhangi birEffectiveIdentity
için gereklidir.- Analysis Services için ana kullanıcının ağ geçidi yöneticisi olması gerekir.
AADSTS90094: Verme işlemi için yönetici izni gerekiyor
Belirtiler:
Yönetici olmayan bir kullanıcı onay verirken bir uygulamada ilk kez oturum açmaya çalıştığında aşağıdaki hatalardan birini alır:
-
ConsentTest needs permission to access resources in your organization that only an admin can grant. Ask an admin to grant permission to this app before you can use it.
-
AADSTS90094: The grant requires admin permission.
Yönetici kullanıcı başarıyla oturum açabilir ve onay verebilir.
Kök neden:
Kiracı için kullanıcı onayı devre dışı bırakıldı.
Çeşitli düzeltmeler yapılabilir:
- Kiracının tamamı için kullanıcı onayını etkinleştirin (tüm kullanıcılar, tüm uygulamalar):
- Azure portalında Microsoft Entra ID>Kullanıcıları ve grupları>Kullanıcı ayarları'na gidin.
- Kullanıcılar, kendi adlarına şirket verilerine erişen uygulamalara onay verebilir ayarını etkinleştirin ve değişiklikleri kaydedin.
- Yönetici uygulamaya kiracının tamamı veya belirli bir kullanıcı için izin verebilir.
CS1061 hatası
Aşağıdaki hatayla karşılaşırsanız Microsoft.IdentityModel.Clients.ActiveDirectory dosyasını indirin:
'AuthenticationContext' does not contain a definition for 'AcquireToken' and no accessible 'AcquireToken' accepting a first argument of type 'AuthenticationContext' could be found (are you missing a using directive or an assembly reference?)
Farklı bir kiracı için Microsoft Entra belirteci (konuk kullanıcı)
Kuruluşunuza eklerken, Microsoft Entra konuk kullanıcılarının içeriğinize erişmesine izin vermek için, parametresinde authorityUri
kiracı kimliğini belirtmeniz gerekir.
Kuruluşunuzun kiracısında kimlik doğrulaması url'si:
https://login.microsoftonline.com/common/v2.0
Konuk Microsoft Entra kullanıcısını kimlik doğrulaması için URL:
https://login.microsoftonline.com/<tenant ID>
Kiracı kimliğinizi bulmak için Microsoft Entra kiracı kimliğini ve birincil etki alanı adını bulma başlığındaki yönergeleri kullanabilirsiniz.
Daha fazla bilgi için bkz . Uygulamanızı çok kiracılı hale getirme.
Veri kaynakları
ISV, aynı veri kaynağı için farklı kimlik bilgilerine sahip olmak istiyor
Bir veri kaynağı, tek bir ana kullanıcı için tek bir kimlik bilgileri kümesine sahip olabilir. Farklı kimlik bilgileri kullanmanız gerekiyorsa daha fazla ana kullanıcı oluşturun. Ardından, ana kullanıcıların bağlamlarının her birine farklı kimlik bilgilerini atayın ve bu kullanıcının Microsoft Entra belirtecini kullanarak ekleyin.
IError nesnesiyle eklenmiş uygulamanızın sorunlarını giderme
Uygulamanızda hata ayıklamak ve hatalarınızın nedenini daha iyi anlamak için JavaScript SDK'sından hata olayı tarafından döndürülen IError nesnesini kullanın.
IError nesnesini aldıktan sonra, kullandığınız ekleme türüne uyan uygun yaygın hatalar tablosuna bakmanız gerekir. IError özelliklerini tablodaki özelliklerle karşılaştırın ve hatanın olası nedenlerini bulun.
Power BI kullanıcıları için ekleme sırasında oluşan tipik hatalar
İleti | Ayrıntılı İleti | Hata Kodu | Olası nedenler |
---|---|---|---|
TokenExpired | Erişim belirtecinin süresi doldu, yeni bir erişim belirteci ile yeniden gönderin | Kategori 403 | Süresi dolmuş belirteç |
PowerBIEntityNotFound | Rapor alınamadı | 404 | |
Geçersiz parametreler | powerbiToken parametresi belirtilmedi | Yok | |
LoadReportFailed | Başlatılamadı - Küme çözümlenemedi | Kategori 403 | |
PowerBINotAuthorizedException | Rapor alınamadı | Kategori 401 | |
TokenExpired | Erişim belirtecinin süresi doldu, yeni bir erişim belirteci ile yeniden gönderin. Başlıklı bir rapor görseli işlenemedi: görsel başlığı | Yok | |
Open Bağlan ionError | Görsel görüntülenemez. Başlıklı bir rapor görseli işlenemedi: görsel başlığı | Yok | Kapasiteyle ilgili bir rapor oturumda açıkken kapasite duraklatıldı veya silindi |
ExplorationContainer_FailedToLoadModel_DefaultDetails | Bu raporla ilişkilendirilmiş model şeması yüklenemedi. Sunucuyla bağlantınız olduğundan emin olun ve yeniden deneyin. | Yok |
Power BI kullanıcısı olmayan kullanıcılar için ekleme sırasında oluşan tipik hatalar (Ekleme Belirteci kullanılarak)
İleti | Ayrıntılı İleti | Hata Kodu | Nedenler |
---|---|---|---|
TokenExpired | Erişim belirtecinin süresi doldu, yeni bir erişim belirteci ile yeniden gönderin | Kategori 403 | Süresi dolmuş belirteç |
LoadReportFailed | Rapor alınamadı | 404 | |
LoadReportFailed | Rapor alınamadı | Kategori 403 | Rapor Kimliği belirteçle eşleşmiyor |
LoadReportFailed | Rapor alınamadı | 500 | Sağlanan rapor kimliği GUID değil |
Geçersiz parametreler | powerbiToken parametresi belirtilmedi | Yok | |
LoadReportFailed | Başlatılamadı - Küme çözümlenemedi | Kategori 403 | Yanlış belirteç türü veya hatalı belirteç |
PowerBINotAuthorizedException | Rapor alınamadı | Kategori 401 | Yanlış/yetkisiz grup kimliği |
TokenExpired | Erişim belirtecinin süresi doldu, yeni bir erişim belirteci ile yeniden gönderin. Başlıklı bir rapor görseli işlenemedi: görsel başlığı | Yok | |
Open Bağlan ionError | Görsel görüntülenemez. Başlıklı bir rapor görseli işlenemedi: görsel başlığı | Yok | Kapasiteyle ilgili bir rapor oturumda açıkken kapasite duraklatıldı veya silindi |
ExplorationContainer_FailedToLoadModel_DefaultDetails | Bu raporla ilişkilendirilmiş model şeması yüklenemedi. Sunucuyla bağlantınız olduğundan emin olun ve yeniden deneyin. | Yok |
Rapor alma başarısız oluyor - hata 401 - kendilerini çözün
Veri sahibi kullanıcı senaryosunda, kullanıcılar bazen Power BI portalına eriştikten sonra kendilerini düzelten bir 401 hatası alır. 401 hatası oluştuğunda, Kullanıcı izinlerini güncelleştirme bölümünde açıklandığı gibi uygulamaya RefreshUser İzinleri çağrısını ekleyin.
Anlamsal modeller
Kullanıcılarınızın verilerin hangi bölümünü görebileceğini yönetme
Anlam modeli için okuma izinlerine sahip olan tüm kullanıcılar şemanın tamamını (tablolar, sütunlar ve ölçüler) ve tüm verileri görebilir. Aynı anlam modelinde ham ve toplanmış verilere yönelik görüntüleme izinlerini ayrı ayrı denetleyemezsiniz.
Kullanıcılarınızın verilerin hangi bölümünü görüntüleyebileceğini yönetmek için aşağıdaki yöntemlerden birini kullanın:
Power BI satır düzeyi güvenliği (RLS) kullanarak satır düzeyi filtreleme.
Verileri farklı anlamsal modellere ayırın. Örneğin, yalnızca toplanan verileri içeren bir anlam modeli oluşturabilir ve kullanıcılarınıza yalnızca bu anlam modeline erişim verebilirsiniz.
İçerik işleme
Eklenmiş Power BI öğelerindeki (raporlar ve panolar gibi) işleme sorunlarını çözmek için bu bölümü gözden geçirin.
Power BI öğesinin Power BI hizmeti yüklendiğini doğrulayın
Uygulamanızla veya ekleme API'leriyle ilgili sorunları elemek için öğenin Power BI hizmeti (powerbi.com) içinde görüntülenebildiğini doğrulayın.
Power BI ekli analiz oyun alanında Power BI öğesinin yüklendiğini doğrulayın
Uygulamanızla ilgili sorunları elemek için Power BI öğesinin Power BI tümleşik analiz oyun alanında görüntülenebildiğini doğrulayın.
Erişim belirtecinizin süresinin dolmadığını doğrulayın
Güvenlik amacıyla erişim belirteçlerinin (Microsoft Entra belirteci veya ekleme belirteci) kullanım ömrü sınırlıdır. Erişim belirtecinizi sürekli izlemeli ve gerekirse yenilemelisiniz. Daha fazla bilgi için bkz . Erişim belirtecini yenileme.
Performans
En iyi performansa sahip ekli içeriği elde etmek için Power BI tümleşik analiz en iyi yöntemlerini izlemenizi öneririz.
Ekleme kurulum aracı
Örnek bir uygulamayı hızla indirmek için Ekleme kurulum aracını gözden geçirebilirsiniz. Ardından uygulamanızı örnekle karşılaştırabilirsiniz.
Önkoşullar
Ekleme kurulum aracını kullanmadan önce tüm uygun önkoşullara sahip olduğunuzu doğrulayın. Power BI Pro hesabına ve Microsoft Azure aboneliğine ihtiyacınız vardır.
- Power BI Pro'ya kaydolmadıysanız başlamadan önce ücretsiz deneme sürümüne kaydolun.
- Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
- Kendi Microsoft Entra kiracı kurulumunuzun olması gerekir.
- Visual Studio'yu (sürüm 2013 veya üzeri) yüklemeniz gerekir.
Genel Sorunlar
Ekleme kurulum aracıyla test ederken karşılaşabileceğiniz bazı yaygın sorunlar şunlardır:
Müşterileriniz için ekleme örnek uygulamasını kullanma
Müşterileriniz için ekle deneyimiyle çalışıyorsanız PowerBI-Developer-Samples.zip dosyasını kaydedin ve sıkıştırmasını açın. Ardından PowerBI-Developer-Samples-master\App Owns Data klasörünü açın ve PowerBIEmbedded_AppOwnsData.sln dosyasını çalıştırın.
- İzin ver'i (İzin ver adımı) seçerken aşağıdaki hatayı alırsınız:
AADSTS70001: Application with identifier <client ID> wasn't found in the directory <directory ID>
Çözüm, açılan menüyi kapatmak, birkaç saniye bekleyip yeniden denemektir. Bu eylemi birkaç kez yinelemeniz gerekebilir. Zaman aralığı, uygulama kayıt işleminin tamamlanmasından dış API'ler için kullanılabilir duruma kadar olan soruna neden olur.
- Örnek uygulama çalıştırılırken aşağıdaki hata iletisi görüntülenir:
Password is empty. Please fill password of Power BI username in web.config.
Örnek uygulamaya eklenmemiş tek değer kullanıcı parolanız olduğundan bu hata oluşur. Çözümde Web.config dosyasını açın ve alanı kullanıcınızın parolası ile doldurun pbiPassword
.
- Şu hatayı alabilirsiniz:
AADSTS50079: The user is required to use multi-factor authentication.
MFA'nın etkinleştirilmediği bir Microsoft Entra hesabı kullanmanız gerekir.
Kuruluşunuzun örnek uygulamasında Embed kullanma
Kuruluşunuz için Ekle deneyimiyle çalışıyorsanız PowerBI-Developer-Samples.zip dosyasını kaydedin ve sıkıştırmasını açın. Ardından PowerBI-Developer-Samples-master\User Owns Data\integrate-report-web-app klasörünü açın ve pbi-saas-embed-report.sln dosyasını çalıştırın.
- Kuruluşunuz için ekle örnek uygulamasını çalıştırdığınızda aşağıdaki hatayı alırsınız:
AADSTS50011: The reply URL specified in the request doesn't match the reply URLs configured for the application: <client ID>
Bu hatanın nedeni, web sunucusu uygulaması için belirtilen yeniden yönlendirme URL'sinin örneğin URL'sinden farklı olmasıdır. Örnek uygulamayı kaydetmek istiyorsanız yeniden yönlendirme URL'si olarak kullanın https://localhost:13526/
.
Kayıtlı uygulamayı düzenlemek istiyorsanız, uygulamanın web API'lerine erişim sağlayabilmesi için Microsoft Entra kayıtlı uygulamasını güncelleştirin.
Power BI kullanıcı profilinizi veya verilerinizi düzenlemek istiyorsanız Power BI verilerinizi düzenlemeyi öğrenin.
- Şu hatayı alabilirsiniz:
AADSTS50079: The user is required to use multi-factor authentication.
MFA'nın etkinleştirilmediği bir Microsoft Entra hesabı kullanmanız gerekir.
Daha fazla bilgi için bkz . Power BI Embedded SSS.
Daha fazla yardım için desteğe başvurun veya Azure portalı üzerinden bir destek bileti oluşturun ve karşılaştığınız hata iletilerini sağlayın.
İlgili içerik
Power BI Embedded Sık Sorulan Sorular
Başka sorunuz var mı? Power BI Topluluğu sorun