Estou executando o SQL Server 2014 Developer Edition no meu PC. Estou tentando visualizar os dados na sessão system_health. No SSMS, conectei ao banco de dados, expandi o servidor/gerenciamento/eventos estendidos/sessões. Vejo AlwaysON_health (parado) e system_health (em execução).
Quando clico com o botão direito do mouse na sessão system_health, recebo o seguinte erro:
O armazenamento falhou ao inicializar usando os parâmetros fornecidos. (Microsoft.SqlServer.XEventStorage) A sessão de Eventos Estendidos denominada "system_health" não pôde ser encontrada. Certifique-se de que a sessão existe e foi iniciada. (Microsoft SQL Server, erro: 25728)
Eu expando system_health e vejo os destinos package0.event_file e package0.ring_buffer. Se eu clicar com o botão direito do mouse em qualquer destino e escolher "Exibir dados do destino", recebo este erro:
O armazenamento falhou ao inicializar usando os parâmetros fornecidos. (Microsoft.SqlServer.XEventStorage) Não é possível visualizar a função 'fn_MSXe_read_event_stream', porque ela não existe ou você não tem permissão. (Microsoft SQL Server, erro: 15151)
A função existe. Eu posso executá-lo:
select * from fn_MSXe_read_event_stream('system_health', 0);
Quando eu faço, recebo este erro:
Msg 25728, Level 16, State 10, Line 6
The Extended Events session named "system_health" could not be found. Make sure the session exists and is started.
Eu sei que a sessão system_health está lá. Eu vejo na lista de sessões:
select * from sys.dm_xe_sessions
address name name
------------------ -------------
0x00000001FF6510C1 system_health
Eu tentei isso com minhas próprias sessões de eventos personalizados. Também não consigo assistir os dados ao vivo deles.
Posso consultar os dados de destino do buffer de anel system_health de sys.dm_xe_session_targets
.
Por que não consigo assistir dados ao vivo para qualquer sessão de eventos estendida?
(Observe que há um item de feedback da Microsoft para esse problema.)
Eu encontrei o problema. Meu login tinha um banco de dados padrão diferente do banco de
master
dados. Quando alterei meu banco de dados padrão paramaster
, o erro desapareceu e pude assistir ao Live Data nas sessões de evento estendidas.Para alterar o banco de dados padrão, no SSMS, expandi o servidor, Segurança, Logins. Cliquei com o botão direito nas minhas credenciais de usuário. Na página Propriedades de login do meu usuário, alterei "Banco de dados padrão" para
master
. O erro desapareceu quando fechei e reabri a conexão no SSMS Object Explorer.EDITAR 2018-12-11
No link de feedback para este problema , Karl Fasick postou uma solução provável: