가용성 그룹을 위한 SQL Server 리소스 DLL의 상태 진단 로그
적용 대상: SQL Server
주 가용성 복제본(replica) 상태를 모니터링하기 위해서 WSFC(Windows Server 장애 조치(failover) 클러스터링) 클러스터에서 실행하는 SQL Server 리소스 DLL은 sp_server_진단이라는 SQL Server 인스턴스의 저장 프로시저를 사용하게 됩니다.
SQL Server 리소스 DLL은 SQL Server 인스턴스와의 전용 개방 연결을 유지하고 관리하며 이를 통해 SQL Server 인스턴스는 주기적으로 SQL Server 리소스 DLL로 세부 상태 진단을 보냅니다. 클러스터의 가용성 그룹 리소스(FailoverConditionLevel 속성)에 만들어진 장애 조치(failover) 정책과 연결된 상태 진단 클러스터에서 가용성 그룹 리소스를 다시 시작할 것인지 아니면 장애 조치(failover)를 할지의 여부를 결정하는 데 사용됩니다. 이 저장 프로시저는 인스턴스에 대한 정기적 연결이 SELECT @@SERVERNAME
쿼리로 만들어지는 SQL Server 2008 R2 이하보다 더 세분화되고 신뢰할 수 있는 WSFC 클러스터에 대한 SQL Server 2012 이상 인스턴스 "하트비트"입니다. 그런 후에 가용성 그룹 FailureConditonLevel 속성을 설정해서 장애 조치(failover)를 트리거하는 조건을 제어할 수 있습니다.
SQL Server 장애 조치(failover) 클러스터의 진단 로그 사용
sp_server_diagnostics에서 SQL Server 리소스 DLL가 수신하는 모든 상태 진단은 SQL Server 인스턴스의 기본 로그 디렉터리(%PROGRAMFILES%\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Log)에 자동으로 저장이 됩니다. 이러한 로그는 SQLDIAG 로그라고 알려져 있으며 XEL(확장 이벤트) 파일 형식으로 저장됩니다. SQL Server 로그 디렉터리에 있는 이러한 파일의 형식은 다음과 같습니다. <HOSTNAME>_<INSTANCENAME>_SQLDIAG_X_XXXXXXXXX.xel. SQLDIAG 로그를 살펴봄으로써 가용성 그룹 리소스 오류 또는 장애 조치(failover) 이벤트의 근본 원인을 파악해 볼 수 있습니다.
SQLDIAG 로그를 보려면 .xel 파일을 SQL Server Management Studio로 끕니다.