Ca și calea implicită (defaul trace), sănătatea sistemului este o sesiune Extended Events care începe automat când o instanță a SQL Server pornește și colectează informații despre ce se întâmplă pe server.
De la BOL puteți afla ce colectează:
- Erori cu urgență> = 20
- Erori legate de memorie (17803, 701, 802, 8645, 8651, 8657 și 8902)
- impas
- Sesiuni care așteptau blocarea pentru mai mult de 30 de secunde
- CLR erorile de alocare alocare virtuală
- și așa mai departe.
Cele mai utile evenimente sunt erorile, blocajul și blocarea așteptării. Rețineți că system_health returnează alte informații decât traseul prestabilit.
Ei bine, colectăm date, dar unde sunt stocate? Dacă te uiți în SSMS, vei vedea două locații de stocare:
Prima locație de stocare se află pe sistemul de fișiere, iar fișierele au nume precum system_heals * .xel, rețineți că există de obicei mai multe astfel de fișiere, cu excepția cazului în care SQL Server a fost instalat recent, acestea fiind stocate aproximativ în următoarea cale C: \ Program Files \ Microsoft SQL Server \ MSSQL12.MSSQLSERVER \ MSSQL \ Log. Cel de-al doilea loc de stocare este localizat aproximativ de-a lungul căii Program Files \ Microsoft SQL Server \ 130 \ Setup Bootstrap \ Log \, aici fișierele au și numele system_health * .xel, dar numele este mult mai lung.
Acum știm ce este sesiunea de sănătate a sistemului și unde este stocată, dar cum vedem ce colectează?
Puteți găsi informații complete aici. Să luăm în considerare principalele caracteristici:
Puteți deschide 1 sau mai multe fișiere * Xel prin SSMS
Vedeți sesiunea curentă prin "Vizualizați datele vizate"
Când deschideți a doua locație de stocare (ring_buffer), obțineți informații sub formă de XML, ceea ce nu este atât de ușor de înțeles.