Sto eseguendo SQL Server 2014 Developer Edition sul mio PC. Sto cercando di visualizzare i dati nella sessione system_health. In SSMS, mi sono collegato al database, ho espanso il server / Gestione / Eventi estesi / Sessioni. Vedo AlwaysON_health (arrestato) e system_health (in esecuzione).
Quando faccio clic con il pulsante destro del mouse sulla sessione system_health, visualizzo il seguente errore:
Impossibile inizializzare la memoria utilizzando i parametri forniti. (Microsoft.SqlServer.XEventStorage) Impossibile trovare la sessione Eventi estesi denominata "system_health". Assicurarsi che la sessione esista e sia avviata. (Microsoft SQL Server, errore: 25728)
Espando system_health e vedo le destinazioni package0.event_file e package0.ring_buffer. Se faccio clic con il pulsante destro del mouse su uno dei target e scelgo "Visualizza dati target", viene visualizzato questo errore:
Impossibile inizializzare la memoria utilizzando i parametri forniti. (Microsoft.SqlServer.XEventStorage) Impossibile visualizzare la funzione 'fn_MSXe_read_event_stream', perché non esiste o non si dispone dell'autorizzazione. (Microsoft SQL Server, errore: 15151)
La funzione esiste. Posso eseguirlo:
select * from fn_MSXe_read_event_stream('system_health', 0);
Quando lo faccio, ottengo questo errore:
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.
So che la sessione system_health è lì. Vedo nella lista delle sessioni:
select * from sys.dm_xe_sessions
address name name
------------------ -------------
0x00000001FF6510C1 system_health
Ho provato questo con le mie sessioni personalizzate di eventi. Non riesco nemmeno a guardare i dati live su di essi.
Posso interrogare i dati di destinazione del buffer dell'anello system_health da sys.dm_xe_session_targets
.
Perché non riesco a guardare i dati in tempo reale per una sessione di eventi estesa?
(Si noti che esiste un elemento di feedback Microsoft per questo problema.)
master
. Ripristino del mio database predefinito per la master
risoluzione dell'errore.