Rozwiązywanie problemów z zaplanowanym odświeżaniem w Serwer raportów usługi Power BI
W tym artykule omówiono zasoby dostępne do rozwiązywania problemów z zaplanowanym odświeżaniem w Serwer raportów usługi Power BI.
W miarę rozwiązywania problemów ten artykuł zostanie zaktualizowany o informacje pomocne.
Typowe problemy
Poniżej przedstawiono bardziej typowe problemy, które zostaną napotkane podczas próby zaplanowanego odświeżania raportu.
Problemy związane ze sterownikiem
Połączenie do różnych źródeł danych może wymagać sterowników innych firm, które muszą zostać zainstalowane w celu pomyślnego nawiązania połączenia. Nie tylko musisz zainstalować je na maszynie, na której używasz programu Power BI Desktop, ale także upewnić się, że sterownik jest zainstalowany na serwerze raportów.
Sterownik może również znajdować się zarówno w 32bitach, jak i 64-bitowych. Pamiętaj, aby zainstalować sterownik 64-bitowy, ponieważ Serwer raportów usługi Power BI jest 64-bitowy.
Aby uzyskać szczegółowe informacje na temat instalowania i konfigurowania sterowników innych firm, zapoznaj się z producentem.
Wykorzystanie pamięci
Wykorzystanie pamięci może wystąpić, gdy raporty wymagają większej ilości pamięci do przetwarzania i renderowania. Planowanie odświeżania raportów może wymagać znacznej ilości pamięci na maszynie. Szczególnie w przypadku większych raportów. Wykorzystanie pamięci może spowodować awarie raportów, a także potencjalną awarię samego serwera raportów.
Jeśli stale napotykasz wykorzystanie pamięci, warto przyjrzeć się skalowanemu wdrożeniu serwera raportów w celu rozłożenia obciążenia zasobów. Można również zdefiniować, że dany serwer raportów jest używany do odświeżania danych za pomocą IsDataModelRefreshService
ustawienia w pliku rsreportserver.config. To ustawienie umożliwia zdefiniowanie co najmniej jednego serwera jako serwera frontonu do obsługi raportów na żądanie i użycie innego zestawu serwerów tylko do zaplanowanego odświeżania.
Aby uzyskać informacje na temat monitorowania wystąpienia usług Analysis Services, zobacz Monitorowanie wystąpienia usług Analysis Services.
Aby uzyskać informacje o ustawieniach pamięci w usługach Analysis Services, zobacz Właściwości pamięci.
Konfiguracja protokołu Kerberos
Połączenie do źródła danych z poświadczeniami systemu Windows może wymagać skonfigurowania ograniczonego delegowania Protokołu Kerberos w celu pomyślnego nawiązania połączenia. Aby uzyskać więcej informacji na temat konfigurowania ograniczonego delegowania protokołu Kerberos, zobacz Konfigurowanie protokołu Kerberos do korzystania z raportów usługi Power BI.
Znane problemy
Informacje o znanych problemach zostaną wyświetlone tutaj, gdy staną się dostępne.
Ustawienia konfiguracji
Następujące ustawienia mogą służyć do wpływania na zaplanowane odświeżanie. Ustawienia ustawione w programie SQL Server Management Studio (SSMS) mają zastosowanie do wszystkich serwerów raportów we wdrożeniu skalowalnym w poziomie. Ustawienia skonfigurowane w pliku rsreportserver.config są przeznaczone dla określonego serwera, na który są ustawione.
Ustawienia w programie SSMS:
Ustawienie | opis |
---|---|
MaxFileSizeMb | Maksymalny rozmiar pliku dla przekazanych raportów. Wartość domyślna to 1000 MB (1 GB). Wartość maksymalna to 2000 MB (2 GB). |
ModelCleanupCycleMinutes | Określa, jak często model jest sprawdzany, aby wykluczyć go z pamięci. Wartość domyślna to 15 minut. |
ModelExpirationMinutes | Określa czas wygaśnięcia modelu na podstawie czasu ostatniego użycia i eksmitowany. Wartość domyślna to 60 minut. |
ScheduleRefreshTimeoutMinutes | Określa, jak długo odświeżanie danych może potrwać dla trybu. Wartość domyślna to 120 minut. Nie ma górnego limitu. |
Ustawienia w pliku rsreportserver.config:
<Configuration>
<Service>
<PollingInterval>10</PollingInterval>
<IsDataModelRefreshService>false</IsDataModelRefreshService>
<MaxQueueThreads>0</MaxQueueThreads>
</Service>
</Configuration>
Narzędzia do rozwiązywania problemów
Dzienniki istotne dla zaplanowanego odświeżania raportów usługi Power BI
Pliki dziennika zawierające informacje o zaplanowanym odświeżaniu to dzienniki RSPowerBI_. Znajdują się one w folderze LogFiles lokalizacji instalacji serwera raportów.
C:\Program Files\Microsoft Power BI Report Server\PBIRS\LogFiles\RSPowerBI_*.log
Warunek błędu
2017-10-20 02:00:09.5188|ERROR|744|Error Processing Data Model Refresh: SessionId: e960c25e-ddd4-4763-aa78-0e5dceb53472, Status: Error Model can not be refreshed because not all the data sources are embedded, Exception Microsoft.PowerBI.ReportServer.AsServer.InvalidDataSourceException: Model can not be refreshed because not all the data sources are embedde
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.AnalysisServicesDataRefresh.CanModelRefresh(IEnumerable`1 dataSources)
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<>c__DisplayClass7.<ExecuteActionWithLogging>b__5()
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<ExecuteFuncWithLogging>d__1`1.MoveNext()
Pomyślne odświeżenie
2017-10-25 15:23:41.9370|INFO|6|Handling event with data: TimeEntered: 10/25/2017 8:23:41 PM, Type: Event, SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, EventType: DataModelRefresh
2017-10-25 15:23:41.9370|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Data Refresh.
2017-10-25 15:23:41.9370|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Retrieving PBIX AsDatabaseInfo.
2017-10-25 15:23:42.7134|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Verifying all the data sources are embedded.
2017-10-25 15:23:42.7134|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Verifying connection strings are valid.
2017-10-25 15:23:42.7134|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Streaming model to Analysis Server.
2017-10-25 15:23:42.7603|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Refreshing the model.
2017-10-25 15:23:51.5258|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Removing credentials from the model.
2017-10-25 15:23:51.6508|INFO|6|Processing Data Model Refresh: SessionId: 46d398db-0b1f-49d8-b7bd-c5461c07ec7a, Status: Starting Saving model to the catalog.
Nieprawidłowe poświadczenia
2017-10-20 08:22:01.5595|INFO|302|Processing Data Model Refresh: SessionId: 22cd9ec3-b21a-4eb1-81ae-15fac8d379ea, Status: Starting Refreshing the model.
2017-10-20 08:22:02.3758|ERROR|302|Error Processing Data Model Refresh: SessionId: 22cd9ec3-b21a-4eb1-81ae-15fac8d379ea, Status: Error Failed to refresh the model, Exception Microsoft.AnalysisServices.OperationException: Failed to save modifications to the server. Error returned: 'The credentials provided for the SQL source are invalid. (Source at rosecatalog;reportserver.). The exception was raised by the IDbCommand interface.
'.
at Microsoft.AnalysisServices.Tabular.Model.SaveChanges(SaveOptions saveOptions)
at Microsoft.PowerBI.ReportServer.AsServer.TOMWrapper.RefreshModel(Database database)
at Microsoft.PowerBI.ReportServer.AsServer.AnalysisServicesServer.RefreshDatabase(String databaseName, IEnumerable`1 dataSources)
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.AnalysisServicesDataRefresh.RefreshDatabase(AsDatabaseInfo asDatabaseInfo)
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<>c__DisplayClass7.<ExecuteActionWithLogging>b__5()
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<ExecuteFuncWithLogging>d__1`1.MoveNext()
2017-10-20 08:22:02.4588|ERROR|302|Error Processing Data Model Refresh: SessionId: 22cd9ec3-b21a-4eb1-81ae-15fac8d379ea, Status: Error Failed Data Refresh, Exception Microsoft.AnalysisServices.OperationException: Failed to save modifications to the server. Error returned: 'The credentials provided for the SQL source are invalid. (Source at rosecatalog;reportserver.). The exception was raised by the IDbCommand interface.
'.
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.ExecuteActionWithLogging(Action methodToExecute, String description, String localizedDescription, String messageInFailure, RefreshInfo refreshInfo, DataAccessors dataAccessors, ReportEventType operation, Int64 size, Boolean isDataRetrieval, Boolean showInExecutionLog)
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.AnalysisServicesDataRefresh.RefreshData(RefreshInfo refreshInfo)
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<>c__DisplayClass7.<ExecuteActionWithLogging>b__5()
at Microsoft.PowerBI.ReportServer.WebHost.EventHandler.DataRefreshScope.<ExecuteFuncWithLogging>d__1`1.MoveNext()
Włączanie pełnego rejestrowania
Włączenie pełnego rejestrowania w Serwer raportów usługi Power BI jest takie samo jak w przypadku usług SQL Server Reporting Services.
- Otwórz
<install directory>\PBIRS\ReportServer\bin\ReportingServicesService.exe.config
. - W obszarze
<system.diagnostics>
zmień wartość DefaultTraceSwitch na 4. - W obszarze
<RStrace>
zmień wartość Components na all:4.
Dziennik wykonywania
Za każdym razem, gdy raport usługi Power BI jest renderowany lub jest wykonywany plan zaplanowanego odświeżania, nowe wpisy są dodawane do dziennika wykonywania w bazie danych. Te wpisy są dostępne w widoku ExecutionLog3 w bazie danych katalogu serwerów raportów.
Wpisy dziennika wykonywania dla raportów usługi Power BI różnią się od wpisów dla innych typów raportów.
- Kolumny czasomierza są zawsze 0. Renderowanie raportów usługi Power BI odbywa się w przeglądarce, a nie na serwerze.
- Istnieją 2 typy żądań i kolejne akcje elementów:
- Interakcyjne: za każdym razem, gdy raport jest wyświetlany.
- ASModelStream: gdy model danych jest przesyłany strumieniowo do usług Analysis Services z katalogu.
- ConceptualSchema: gdy użytkownik kliknie wyświetlanie raportu.
- QueryData: za każdym razem, gdy dane są żądane od klienta.
- Odśwież pamięć podręczną: za każdym razem, gdy zostanie wykonany plan zaplanowanego odświeżania.
- ASModelStream: za każdym razem, gdy model danych jest przesyłany strumieniowo do usług Analysis Services z katalogu.
- DataRefresh: za każdym razem, gdy dane są odświeżane z co najmniej jednego źródła danych.
- SaveToCatalog: za każdym razem, gdy model danych jest zapisywany z powrotem w wykazie.
- Interakcyjne: za każdym razem, gdy raport jest wyświetlany.
Analysis Services
Czasami warto zmodyfikować usługi Analysis Services w celu diagnozowania problemów lub dostosować limity pamięci.
Ważne
Te ustawienia zostaną zresetowane za każdym razem, gdy uaktualnisz serwer raportów. Pamiętaj, aby zachować kopię zmian i w razie potrzeby ponownie je zastosować.
Lokalizacja instalacji
Domyślna lokalizacja dla Serwer raportów usługi Power BI i usług Analysis Services jest następująca.
C:\Program Files\Microsoft Power BI Report Server\PBIRS\ASEngine
Konfigurowanie ustawień usług Analysis Services (msmdsrv.ini)
<install directory>\PBIRS\ASEngine
W katalogu znajduje się plik msmdsrv.ini, którego można użyć do kontrolowania różnych ustawień usług Analysis Services. Po otwarciu tego pliku natychmiast zauważysz, że ten plik nie ma wszystkich ustawień, których można oczekiwać w pliku msmdsrv.ini.
Dzieje się tak dlatego, że rzeczywisty proces usług Analysis Services uruchamiany przez Serwer raportów usługi Power BI jest uruchamiany w programie <install directory>\PBIRS\ASEngine\workspaces
. W tym folderze zobaczysz pełny plik msmdsrv.ini , do którego służy. Ważne jest, aby nie modyfikować pliku w folderze obszarów roboczych, ponieważ jest on zastępowany przy każdym uruchomieniu procesu usług Analysis Services. Jeśli chcesz kontrolować ustawienie, zrób to, modyfikując plik msmdsrv.ini w <install directory>\PBIRS\ASEngine
katalogu.
Następujące ustawienia są resetowane po uruchomieniu procesu usług Analysis Services. Wszelkie wprowadzone zmiany zostaną zignorowane.
- Konfiguracja Ustawienia\PrivateProcess
- Konfiguracja Ustawienia\DataDir
- Konfiguracja Ustawienia\LogDir
- Konfiguracja Ustawienia\TempDir
- Konfiguracja Ustawienia\BackupDir
- Configuration Ustawienia\AllowedBrowsingFolders
- Configuration Ustawienia\CrashReportsFolder
- Configuration Ustawienia\ExtensionDir
- Konfiguracja Ustawienia\Port
- Configuration Ustawienia\DeploymentMode
- Konfiguracja Ustawienia\ServerLocation
- Configuration Ustawienia\TMCompatabilitySKU
- Configuration Ustawienia\FlightRecorder\TraceDefinitionFile
Profilowanie lokalnego procesu usług Analysis Services
Śledzenie profilera SQL można uruchomić w lokalnym procesie usług Analysis Services na potrzeby diagnostyki. Aby nawiązać połączenie z lokalnym wystąpieniem usług Analysis Services, wykonaj następujące czynności.
Śledzenie profilera programu SQL Server jest dołączone do pobierania programu SQL Server Management Studio (SSMS).
- Uruchom program SQL Server Profiler jako administrator.
- Wybierz przycisk Nowy ślad.
- W oknie dialogowym Połączenie do serwera wybierz pozycję Analysis Services i wprowadź wartość localhost:5132 jako nazwę serwera.
- W oknie dialogowym Właściwości śledzenia wybierz zdarzenia, które chcesz przechwycić, i wybierz pozycję Uruchom.
Blokowanie stron w uprawnieniach systemu Windows pamięci
Jeśli okaże się, że nie możesz renderować raportu usługi Power BI, przypisanie uprawnień Zablokuj strony w pamięci do konta usług z uruchomionym serwerem raportów usługi Power BI może pomóc. Aby uzyskać więcej informacji na temat konfigurowania blokady stron w pamięci, zobacz Uprawnienia systemu Windows przypisane do konta usługi Analysis Services.
Masz więcej pytań? Spróbuj zadać Społeczność usługi Power BI