Debug Diagnostic Tool v2 Update 2 버전을 사용해서 User mode 프로세스 crash 발생 시 자동으로 덤프를 수집하는 방법을 아래와 같이 정리하였습니다. 어플리케이션의 예기치 않은 종료 문제를 찾기 위해 필요할 때가 있죠.
본 예제는 SQL Server Agent 서비스가 예기치 않게 종료될 때, 자동으로 덤프를 트리거하는 방법입니다.
1. 다음 링크를 통해 64-bit 버전의 Debugdiag 툴을 다운로드 받아 SQL Server Agent 가 실행 중인 서버에 설치합니다.
https://www.microsoft.com/en-us/download/details.aspx?id=49924
2. Debugdiag 2.0 Collection – Add Rule – Crash – 다음
3. A Specific NT service - SQLSERVERAGENT 선택
4. Breakpoints - Add Breakpoint - Ntdll!ZwTerminateProcess 선택
- Action Type : Full dump
- Action Limit : 3
5. 디스크 가용 공간이 충분한 경로에 덤프가 생성되도록 폴더를 설정하고 Active the rule now 메뉴를 선택하여 즉시 이 규칙을 적용할 수 있습니다.
만약 SQL Server Agent 서비스가 예기치 않게 종료된다면 설정한 폴더에 덤프 파일이 자동으로 생성됩니다.
더 이상 덤프를 트리거 하고 싶지 않다면 위에서 생성한 규칙을 선택한 후 Remove Rule 버튼을 클릭하여 서비스에 영향을 주지 않고 제거할 수 있습니다.
작성자 : Lai Go / 작성일자 : 2016.01.14