일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- LiveKD
- Windows Server 2016
- windows update
- 안철수
- windows debugging tool
- Windows Server 2016 Hyper-v Cluster
- 작업관리자
- SQL Server 2012R2 FCI
- Windows Server 2008
- nonpaged pool
- windows media service
- paged pool
- ftp7.5 장애조치 클러스터
- Nested VM
- MSCS on VMWare
- cluster node as Domain controller
- 터키여행
- 프로세스 CPU 사용량
- failover cluster
- 클러스터
- Session space
- Xperf
- 인문고전
- Local TempDB
- FTP7.5
- dsquery
- iSCSI target
- SQL Server 2008
- Hyper-V
- windbg
- Today
- Total
류짱:Beyond MySelf
Windows server 프로세스 덤프 (user dump) 수집 방법 본문
생각보다 user dump를 수집 할 수 있는 방법이 많네요....
userdump.exe / adplus / debug diag / process explorer / 작업 관리자 / procdum.exe ...등 등..
정리 해 봅니다.
1. Userdump.exe 도구를 사용하여 덤프 파일을 만드는 방법
http://support.microsoft.com/kb/241215/ko
1. 아래 링크를 통하여 user dump tool을 다운로드 받아 설치합니다.
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=e089ca41-6a87-40c8-bf69-28ac08570b7e
2. 더블 클릭하여 실행하면 실행 파일이 C:\kktools\userdump81\ folder에 저장됩니다.
3. C:\kktools\userdump81\x86\setup.exe를 실행하여 setup process실행합니다.
4. 설치 과정에서 “Dump on process termination” 기능을 enable합니다.
5. 설치가 끝나면, 제어판에서 Process dumper 를 실행합니다
6. New 를 클릭하시고, dump를 수집할 process를 입력합니다.
=> 여기에 수집 하고자 하는 process 이름, 예를 들면, explorer.exe 를 입력합니다.
7. 해당 아이템을 Double click 하여 process monitor rule 대화상자를 실행합니다.
8. Use custom rules 을 실행합니다
9. Dump file folder text 상자에 덤프 파일이 저장될 경로를 입력합니다.
10. All Exceptions 를 선택합니다.
11. Minidump type은 Complete, Save mode는 Cyclic Saving(5 times) 를 선택합니다.
12. Monitor process exit 을 선택하고 Minidump type은 Complete 를 선택합니다.
13. 문제 증상을 재현하면, 9번에 설정한 경로에 process덤프가 생성될 것입니다.
** 자료 수집 이후, 덤프 설정을 제거하기 위해서는 제어판/Process dumper/Process Monitoring에서 explorer.exe 를 선택 후, Remove 버튼을 클릭하시면 됩니다.
2. Adplus.vbs 이용한 덤프 수집
ADPlus를 사용하여 "중지"와 "충돌" 문제를 해결하는 방법
http://support.microsoft.com/kb/286350
adplus를 이용한 process dump 생성
A. cmd 창을 설치하고, windbg가 설치된 폴더(C:\program files\Debugging Tools for Windows )로
이동합니다.
B. 작업 관리자에서 덤프를 생성하고자 하는 프로세스의 ID를 확인 합니다.
cf) 명령 프롬프트를 실행하여 tasklist 명령어를 실행하여 PID나 Process Name을 확인 하셔도 됩니다.
C. 아래 명령으로dump 수집을 위한 명령어를 실행합니다.
1. Crash Dump 수집
adplus –crash –p[덤프 수집하고자 하는 프로세스 PID] –o c:\(덤프저장위치)
2. 프로세스 hang 덤프 수집
adplus -hang -pn [덤프 수집하고자 하는 프로세스 이름] –o c:\(덤프 저장위치)
예> adplus –crash –p 2784 –o c:\ // 프로세스 ID 2784의 프로세스에 crash가 발생 할 경우 C:\ 저장
3. Debug diag1.2을 이용한 덤프 수집
Debug Diagnostic Tool v1.2
http://www.microsoft.com/download/en/details.aspx?id=26798
Debug Diagnostics Tool v1.2 is now available
http://support.microsoft.com/kb/2580960
4. Process Explorer를 이용한 덤프 수집
Sysinternals 사이트에서 Process Explorer를 다운 로드 후 설치
http://technet.microsoft.com/en-us/sysinternals
A. 프로세스 익스플로러를 실행 후 덤프를 수집 하고자 하는 프로세스를 오른쪽 마우스로 선택 후 create dump => Full dump
5. 작업 관리자를 이용한 덤프 수집(Windows Vista 이상)
How to create a user-mode process dump file in Windows Vista and in Windows 7
http://support.microsoft.com/kb/931673
How to create a user-mode process dump file in Windows Server 2008
http://support.microsoft.com/kb/949180
작업 관리자를 실행 후 덤프를 생성 하고자 하는 프로세스를 오른쪽 마우스로 선택 후 덤프를 생성 합니다.
덤프가 생성 되는 위치를 쉽게 찾아가는 방법은 작업 표시줄 => 시작 => 열기에 [%appdata%]를 입력 후 해당 폴더로 이동 하는 것입니다.
6. Windows debugging tool을 이용한 덤프 수집
7. procdump.exe를 이용한 덤프 수집
http://technet.microsoft.com/en-us/sysinternals/dd996900
덤프 수집 예)
Procdump -64 – c 50 –ma –s 2 –n 2 2252 c:\temp
프로세스 id 2252의 cpu의 사용률이 2초간 50% 이상 될 경우 c:\temp에 프로세스 full 덤프 수집
옵션 설명
-64: OS가 x64버전 일 경우
- c: CPU의 사용률
- ma: process full dump
- S: C 옵션을 이용해서 지정한 CPU usage의 지속 시간(초)
- n: 덤프 수집 횟 수
- 2252 : cpu를 많이 사용한w3wp프로세스 ID
- c:\temp : 덤프 생성 위치
감사합니다^^