티스토리 뷰
주말에 시간이 나서 업무를 보던 중에
Exception Filter 발생 시에 덤프를 뜨거나 로그를 남기거나 주요 자원을 남기는 건 알겠는데,
생각해보면,
그런 일이 있을 때마다 바뻐 죽겠는데
일단 누구 모듈 문제인지 스레드 문제인지 알아야되는데
덤프를 받아서 까고 이러고 싶지가 않은 것이다.
특히나 특정 환경에서 문제가 생기면... 환장한다.
그래서 내가 필요한 것은 [어떤 모듈]에서 그리고 [어떤 스레드]에서 인지를 알고 싶은 것이었다.
https://github.com/JochenKalmbach/StackWalker
GitHub - JochenKalmbach/StackWalker: Walking the callstack in windows applications
Walking the callstack in windows applications. Contribute to JochenKalmbach/StackWalker development by creating an account on GitHub.
github.com
callstackwalker를 처음 봤을 때는
그냥 callstack을 이용하는거구나 exception filter에 이용하면 좋겠구나
라는 생각만 했는데 예제 코드를 까보니
내가 생각했던 코드가 들어있었다.
exception filter에 쓸 수 있는 예외 처리 시 마지막 죽은 부분의
콜스택을 쓰는 코드가 있었다.
유레카 - 쓸만하구나
그러나 이 코드를그대로 쓰지는 않을 것 같다.
아마도 dbghelp에 콜스택walker 자체가 있으니
그것을 분석해서 쓸 예정이다.
어쨋든 이렇게 쓸 수 있다는 걸 보니 즐겁다.
현업에서 덤프를 보는게 가장 확실하지만
특정 스레드와 콜스택 그리고 대략적인 정보를
미리 알 수 있으면 유관 부서에 준비 시키기도 좋고
(긴급할 때는 사이트에서 덤프 받는데 하루 걸리는 것조차 용서되지 않는다)
받자마자 바로 교체 테스트를 할 수 있으니 좋을 것이다.
'트러블슈팅 > Windows' 카테고리의 다른 글
Leak Diag를 부활시켜보자. (0) | 2022.08.28 |
---|---|
별도의 메모리 래퍼 의 필요성에 대해 (0) | 2022.08.28 |
상황 별 트러블 슈팅의 기법 (0) | 2022.08.28 |
call stack walker를 통해서 exception 된 dump의 연계에서 call stack 바로 찍기 (0) | 2022.08.01 |
부팅 시에 시스템, 드라이버, 서비스 모니터링 하기 (0) | 2022.05.14 |
- Total
- Today
- Yesterday
- 파이썬 #이벤트로그 #크롤링
- 주택청약
- 구조체 #클래스
- 망할비주얼스튜디오코드파이썬쓸때는좋더니만
- Injection
- 추첨제
- 세대주
- 필터링
- 왜다운로드안되게해놨어
- 세대원
- 청약방법
- 절제의성공학
- 이럴거야?
- 세대주분리
- 청약
- 와이어샤크
- 가점제
- 미즈노남보쿠
- procmon
- 비주얼스튜디오코드C/C++
- procmoninjection
- 무료라메
- procmon활용
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |