Lo strumento di
sp_whoisactive è uno strumento di diagnostica creato da
Adam Machanic , che correla le informazioni provenienti da diverse visualizzazioni di gestione dinamica SQL (DMV). È quindi in grado di presentare una serie di informazioni più ricche e dettagliate rispetto a strumenti
sp_who più vecchi come e
sp_who2 . Poiché è così potente, esula dall'ambito di questo articolo per approfondire le sue capacità.
Lo
sp_whoisactive strumento è una stored procedure SQL che, quando eseguita, restituisce informazioni sull'attività SQL corrente. È possibile controllare i risultati e la relativa presentazione passando i parametri alla procedura durante l'esecuzione.
In questo articolo viene descritto come ottenerlo e utilizzarlo
sp_whoisactive . Lo strumento raccoglie informazioni di interesse comune per la risoluzione dei problemi del database ePO.
Installazione sp_whoisactive
NOTA:Lo
sp_whoisactive strumento è ospitato in
Github e viene concesso in licenza in
GPLv3 . Per installare:
- Scaricare il file ZIP del codice sorgente da https://github.com/amachanic/sp_whoisactive/Releases.
- Estrarre il file ZIP in un percorso temporaneo.
- Aprire il who_is_active.sql file script in SQL Management Studio.
- Assicurarsi che il database ePO sia selezionato nella casella di posta dei database disponibili .
NOTA: Se si utilizza ePO 5.10.x , assicurarsi di selezionare il database principale di ePO, non il database degli eventi separato.
- Fare clic su Esegui.
La
sp_whoisactive stored procedure è ora installata nel database ePO.
Utilizzo di sp_whoisactive
Per raccogliere informazioni, eseguire
sp_whoisactive da una finestra di query in Microsoft SQL Management Studio:
exec sp_WhoIsActive
Il comando precedente esegue la procedura utilizzando le impostazioni predefinite. Queste impostazioni forniscono una panoramica delle attività correnti.
Per modificare i risultati, ignorare le impostazioni predefinite passando i parametri quando il query viene eseguito:
Nota: Esula dall'ambito di questo articolo per dettagliare tutti i parametri supportati. Ma per la maggior parte dei casi, i seguenti parametri sono i più utili.
EXEC sp_WhoIsActive
@get_plans = 1,
@get_outer_command = 1,
@get_transaction_info = 1
Nell'esempio precedente vengono visualizzati i risultati nella finestra di Management Studio.
Per impostazione predefinita,
sp_whoisactive vengono formattati alcuni risultati, ad esempio
sql_text in formato XML, che li rendono interattivi. È possibile fare clic su un determinato risultato per aprire una nuova finestra di query con i dettagli. Tuttavia, la formattazione XML rende i risultati più difficili da leggere se si salvano i risultati in un file. Se Assistenza tecnica richiede il file, potrebbe essere necessario salvare i risultati in un file.
Per salvare i risultati in un file, procedere come segue per rispostare la formattazione per semplificare la lettura:
EXEC sp_WhoIsActive
@get_plans = 1,
@get_outer_command = 1,
@get_transaction_info = 1,
@format_output = 0
Prima di eseguire il query, fare clic con il pulsante destro del mouse in un punto qualsiasi della finestra di query e selezionare results to/results to file. Quando si esegue il query, viene richiesta una posizione per salvare il file. Al termine del salvataggio, fare clic con il pulsante destro del mouse nella finestra query e selezionare risultati a/risultati in griglia. Questa azione restituisce l'ambiente all'impostazione predefinita.