天天看點

[AlwaysOn Availability Groups]AlwaysOn健康診斷日志AlwaysOn健康診斷日志

為了監控primary可用副本的健康狀況,SQL Server資源DLL使用SQL Server2012的過程sp_server_diagnostics。

SQL Server resource DLL維護了一個專用的連接配接到SQL Server執行個體,通過這個SQL Server執行個體定期的發送健康診斷資訊到SQL Server resource DLL。健康診斷資訊與叢集中的AG中的failover policy耦合,被用來确定叢集是否重新開機或者故障轉移。這個過程是新SQL Server執行個體的心跳線,比之前的更加細緻,更加可靠。不像之前的版本隻是運作select @@servername。然後可以通過條件控制故障轉移觸發通過設定FailureConditonLevel 屬性。

使用SQL Server故障轉移叢集診斷日志

所有健康診斷,SQL Server resource DLL都是從sp_server_diagnostics擷取自動被儲存到 (%PROGRAMFILES%\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Log)。這些日志被稱為SQLDIAG日志儲存為XEL格式(擴充事件)。這些檔案的格式為<HOSTNAME>_<INSTANCENAME>_SQLDIAG_X_XXXXXXXXX.xel。通過檢視SQLDIAG日志,你可以發現AG資源錯誤或者故障轉移事件的根本問題。

通過把xel檔案拖到SSMS可以檢視這些日志