SQL Server/SQL Server Tip

Read the End of a Large Error Log (에러로그 끝 부분 읽기)

SungWookKang 2015. 7. 17. 10:14
반응형

Read the End of a Large Error Log (에러로그 끝 부분 읽기)

 

  • Version : SQL Server 2000, 2005, 2008, 2008R2, 2012

 

SQL Server를 운영하다 보면 예기치 못한 장애가 발생한다. 이때 시스템에 발생하는 에러 및 사용자 에러를 에러로그라는 곳에 남길 수 있다. 문제는 이 에러로그가 매우 커졌을 때 로그 메시지 자체를 로딩 하는데 매우 오래 걸린다는 것이다. 지금 당장 에러 메시지를 확인하여야 하는데 로그 파일이 너무 커서 열리지가 않는다면 어떻게 할까? 다음 실습을 통하여 마지막 로그만 읽어오는 방법을 알아 보자.

 

SSMS를 통한 에러로그 확인 방법. 에러로그 파일이 클 경우 로딩하는데 오래 걸리며 SSMS 응용프로그램에 문제가 있을 경우 확인 할 수 없다.

 

Windows Server 2003 Resource Kit를 설치하여 Tail명령어를 이용하여 로그의 마지막 행을 읽을 수 있다. Resource Kit은 무료로 제공 된다.

다운로드 : http://www.microsoft.com/en-us/download/confirmation.aspx?id=17657

 

 

 

Windows Server 2003 Resource Kit을 다운로드 받았으면 설치 하자. 나의 경우에는 Win7에 설치하였다. 호환성 문제 경고가 나타났으나 무시하고 설치하였으며 정상적인 실행이 되었다.

 

 

설치가 완료 되면 다음과 같이 시작 메뉴에 정상적으로 설치된 것을 확인 할 수 있다.

 

 

[시작] - [실행] 또는 [윈도우키] + [R]을 눌러 커맨드 창을 실행한다. 그리고 다음과 같이 명령어를 입력 한다.

tail -20, "C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG.1"

 

-20 : 끝에서부터 읽을 줄 수를 의미.

"C:\Program~~" : 에러로그 파일이 있는 경로 및 파일명

 

실습에서는 20개의 마지막 로그를 읽는 명령을 실행 하였다. 다음과 같이 에러로그를 확인 할 수 있으며 여기에서 문제가 발생한 부분을 찾아 해결 하면 된다.

 

 

에러로그를 잘 남기는 것도 중요하지만 잘 보는 것도 중요하다. 간혹 로그메시지가 너무 커서 현재 에러 발생 상황을 알 수 없다면 아무리 잘 남기고 있다고 하더라도 소용없을 것이다. 이 방법을 잘 활용하면 운영 업무에 큰 도움이 될 듯 하다.

(에러로그가 없어야 운영이 잘 되고 있는 서비스 입니다 ^^)

 

2012-11-28 / 강성욱 / http://sqlmvp.kr

 

반응형