Solucionar problemas de atualização agendada no Servidor de Relatório do Power BI
Este artigo discute os recursos disponíveis para solucionar problemas com a atualização agendada no Servidor de Relatório do Power BI.
À medida que os problemas surgem, este artigo será atualizado com informações para ajudá-lo.
Problemas comuns
A seguir estão os problemas mais comuns que você enfrentará ao tentar agendar a atualização para um relatório.
Problemas relacionados com o condutor
A conexão com diferentes fontes de dados pode exigir drivers de terceiros que precisam ser instalados para se conectar com êxito. Você não só precisará instalá-los na máquina em que está usando o Power BI Desktop, mas também precisará verificar se o driver está instalado no servidor de relatório.
O driver também pode vir em 32bit e 64bit. Certifique-se de instalar o driver de 64 bits, pois o Servidor de Relatório do Power BI é de 64 bits.
Consulte o fabricante para obter detalhes sobre como instalar e configurar drivers de terceiros 3rd.
Pressão da memória
A pressão da memória pode ocorrer quando os relatórios exigem mais memória para processar e renderizar. Agendar atualização em relatórios pode exigir uma quantidade significativa de memória na máquina. Especialmente para relatórios maiores. A pressão da memória pode resultar em falhas de relatório, bem como em uma possível falha do próprio servidor de relatório.
Se você estiver encontrando pressão de memória de forma consistente, talvez valha a pena examinar uma implantação dimensionada do servidor de relatório para distribuir a carga de recursos. Você também pode definir que um determinado servidor de relatório é usado para atualização de dados com a IsDataModelRefreshService
configuração em rsreportserver.config. Com essa configuração, você pode definir um ou mais servidores para ser o servidor front-end para lidar com relatórios sob demanda e ter outro conjunto de servidores a serem usados apenas para atualização agendada.
Para obter informações sobre como monitorar uma instância do Analysis Services, consulte Monitorar uma instância do Analysis Services.
Para obter informações sobre configurações de memória no Analysis Services, consulte Propriedades de memória.
Configuração do Kerberos
A conexão com uma fonte de dados com credenciais do Windows pode exigir a configuração da delegação restrita de Kerberos para fazer uma conexão bem-sucedida. Para obter mais informações sobre como configurar a delegação restrita de Kerberos, consulte Configurar Kerberos para usar relatórios do Power BI.
Problemas conhecidos
As informações sobre problemas conhecidos serão listadas aqui quando estiverem disponíveis.
Definições de configuração
As configurações a seguir podem ser usadas para afetar a atualização agendada. As configurações definidas no SQL Server Management Studio (SSMS) aplicam-se a todos os servidores de relatório em uma implantação em expansão. As configurações definidas no rsreportserver.config são para o servidor específico em que estão definidas.
Configurações no SSMS:
Definição | Descrição |
---|---|
MaxFileSizeMb | Tamanho máximo do arquivo para relatórios carregados. O padrão é 1000 MB (1 GB). O valor máximo é 2000 MB (2 GB). |
ModelCleanupCycleMinutes | Define a frequência com que o modelo é verificado para eliminá-lo da memória. A predefinição são 15 minutos. |
ModelExpirationMinutes | Define quanto tempo até o modelo expirar com base na última vez usada e ser removido. O padrão é 60 minutos. |
ScheduleRefreshTimeoutMinutes | Define quanto tempo a atualização de dados pode levar para um modo. O padrão é 120 minutos. Não existe um limite máximo. |
Configurações dentro rsreportserver.config:
<Configuration>
<Service>
<PollingInterval>10</PollingInterval>
<IsDataModelRefreshService>false</IsDataModelRefreshService>
<MaxQueueThreads>0</MaxQueueThreads>
</Service>
</Configuration>
Ferramentas de resolução de problemas
Logs relevantes para atualização agendada de relatórios do Power BI
Os arquivos de log que contêm informações sobre a atualização agendada são os logs RSPowerBI_. Eles estão localizados na pasta LogFiles do local de instalação do servidor de relatório.
C:\Program Files\Microsoft Power BI Report Server\PBIRS\LogFiles\RSPowerBI_*.log
Condição de erro
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()
Atualização bem-sucedida
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.
Credenciais incorretas
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()
Ativando o registro detalhado
Habilitar o log detalhado, no Servidor de Relatório do Power BI, é o mesmo que para o SQL Server Reporting Services.
- Abrir
<install directory>\PBIRS\ReportServer\bin\ReportingServicesService.exe.config
. - Em
<system.diagnostics>
, altere DefaultTraceSwitch para 4. - Em
<RStrace>
, altere Componentes para todos:4.
ExecutionLog
Sempre que um relatório do Power BI é renderizado ou um plano de atualização de agenda é executado, novas entradas são adicionadas ao Log de Execução no banco de dados. Essas entradas estão disponíveis no modo de exibição ExecutionLog3 no banco de dados do catálogo do servidor de relatório.
As entradas do log de execução para relatórios do Power BI diferem das entradas para outros tipos de relatório.
- As colunas TimeRendering são sempre 0. A renderização de relatórios do Power BI acontece no navegador, não no servidor.
- Existem 2 tipos de solicitação e ações de item subsequentes:
- Interativo: sempre que um relatório está sendo visualizado.
- ASModelStream: quando o modelo de dados é transmitido do catálogo para o Analysis Services.
- ConceptualSchema: quando o usuário clica na visualização do relatório.
- QueryData: sempre que os dados estão sendo solicitados ao cliente.
- Atualizar cache: sempre que um plano de atualização de agenda tiver sido executado.
- ASModelStream: sempre que o modelo de dados é transmitido do catálogo para o Analysis Services.
- DataRefresh: sempre que os dados estão sendo atualizados de uma ou mais fontes de dados.
- SaveToCatalog: sempre que o modelo de dados estiver sendo salvo de volta no catálogo.
- Interativo: sempre que um relatório está sendo visualizado.
Analysis Services
Pode haver momentos em que você queira modificar o Analysis Services para diagnosticar problemas ou ajustar os limites de memória.
Importante
Essas configurações serão redefinidas sempre que você atualizar o servidor de relatório. Certifique-se de manter uma cópia das alterações e reaplicá-las, se necessário.
Localização de instalação
O local padrão para o Servidor de Relatório do Power BI e o Analysis Services é o seguinte.
C:\Program Files\Microsoft Power BI Report Server\PBIRS\ASEngine
Definindo as configurações do Analysis Services (msmdsrv.ini)
<install directory>\PBIRS\ASEngine
No diretório, você encontrará o arquivo msmdsrv.ini, que pode ser usado para controlar diferentes configurações do Analysis Services. Quando você abrir este arquivo, você perceberá imediatamente que esse arquivo não tem todas as configurações que você esperaria no arquivo msmdsrv.ini.
Isso ocorre porque o processo real do Analysis Services executado pelo Servidor de Relatório do Power BI é iniciado no <install directory>\PBIRS\ASEngine\workspaces
. Nessa pasta, você verá o arquivo msmdsrv.ini completo ao qual está acostumado. É importante não modificar o arquivo dentro da pasta de espaços de trabalho, pois ele é reescrito sempre que o processo do Analysis Services é iniciado. Se você quiser controlar uma configuração, faça isso modificando msmdsrv.ini no <install directory>\PBIRS\ASEngine
diretório.
As configurações a seguir são redefinidas sempre que o processo do Analysis Services é iniciado. Quaisquer alterações feitas a eles serão ignoradas.
- ConfigurationSettings\PrivateProcess
- ConfigurationSettings\DataDir
- ConfigurationSettings\LogDir
- Configurações\TempDir
- ConfigurationSettings\BackupDir
- ConfigurationSettings\AllowedBrowsingFolders
- ConfigurationSettings\CrashReportsFolder
- ConfigurationSettings\ExtensionDir
- ConfigurationSettings\Porta
- ConfigurationSettings\DeploymentMode
- ConfigurationSettings\ServerLocation
- ConfigurationSettings\TMCompatabilitySKU
- ConfigurationSettings\FlightRecorder\TraceDefinitionFile
Definindo o perfil do processo local do Analysis Services
Um rastreamento do SQL Profiler pode ser executado no processo local do Analysis Services para fins de diagnóstico. Para se conectar à instância local do Analysis Services, faça o seguinte.
O Rastreamento do SQL Server Profiler está incluído no download do SQL Server Management Studio (SSMS).
- Inicie o SQL Server Profiler como administrador.
- Selecione o botão Novo rastreamento .
- Na caixa de diálogo Conectar ao servidor, selecione Analysis Services e digite localhost:5132 para o nome do servidor.
- Na caixa de diálogo Propriedades de rastreamento, selecione os eventos que deseja capturar e selecione Executar.
Bloquear páginas na memória privilégio do Windows
Se você achar que não consegue renderizar um relatório do Power BI, atribuir as páginas de bloqueio no privilégio de memória à conta de serviços que executa o servidor de Relatório do Power BI pode ajudar. Para obter mais informações sobre como configurar Bloquear páginas na memória, consulte Privilégios do Windows atribuídos à conta de serviço do Analysis Services.
Tem dúvidas? Tente perguntar à Comunidade do Power BI