Microsoft MVP성태의 닷넷 이야기
닷넷 에러시 조치사항관련... [링크 복사], [링크+제목 복사]
조회: 17151
글쓴 사람
김기룡
홈페이지
첨부 파일
 

안녕하세요.
질문을 계속 드리네요^^

VS 2008에서 C#으로 프로그램을 작성 했으며, 빌드시 하위 호환성은 .NET 2.0으로 되어있습니다.
배포는 VS자체 기능이 아닌 InstallShield로 배포파일을 만들었는데,
개발한 프로그램이 정상 적으로 동작하는 사용자가 있는 반면
가끔 정상적으로 실행되지 않는 사용자의 경우 다양한 오류 현상들이 접수되고 있습니다.

C#으로 개발된 어플은 .Net Framework 위에서 동작하는데
.Net Framework은 OS와도 밀접한 관계가있어서 단순히 개발된 프로그램의 문제라고 보기에도 어렵고
사용자들의 이상 현상을 어떤 식으로 접근해야 할지도 막막합니다.

예를들어,
어떤 사용자는 제가 개발한 프로그램을 설치한 시점에서는 정상적으로 사용되는데
리부팅을 하면 부팅시에 항상 에러 코드번호 없이 .NET 오류 메시지가 발생하는 사용자가 있으며,

어떤 사용자는 H/W 성능이 좋음에도 제가 개발한 프로그램을 사용하면
컴퓨터가 Hang이 걸릴 정도로 느리다는 사용자도 있습니다.

원격으로 사용자의 환경을 살펴서 원인을 파악하라고 하는데
어떤 정보들을 수집해서 살펴봐야 할지도 막막하더군요.


어떤 사용자는 시스템이 크레쉬 되었다면서 단순히 아래와 같은 텍스트 내용을 보내줬습니다.
파일 경로명에 "WER"이 보여서 인터넷을 찾아보니 윈도우즈 에러 레포팅 기능 같은데
이와 관련된 한글 자료를 찾기 어렵고 해당 정보를 어떤식으로 이용할 지도 애매하군요.

1601212626
   5
   CLR20r3
   Not available
   0
   test.exe
   1.0.1.75
   4d196e89
   System
   2.0.0.0
   4a275e12
   3a97
   394
   System.ComponentModel.Win32
    
   C:\Users\Tester\AppData\Local\Temp\WER2977.tmp.WERInternalMetadata.xml
   C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_test.exe_7648e28e3b956cff242acbe66e450155946e8cc_19455576
    
   0
   73c3a3fd-1510-11e0-aca8-c80aa9fc763b
   0"


위 에러와 관련하여 도움을 부탁드리며 혹시 닷넷과 관련된
응용 프로그램들의 에러들은 어떤 식으로 접근해야 하는지 조언을 구합니다.

또한, C#으로 개발된 윈폼 프로그램의 다양한 환경을 분석하기위한
툴들로는 어떤게 있는지 조언 부탁드려봅니다.








[최초 등록일: ]
[최종 수정일: 1/3/2011]


비밀번호

댓글 작성자
 



2011-01-04 12시05분
제 경우에는 딱히 다양한 환경 분석을 위한 툴을 사용하는 것은 없습니다. 단지 소스 서버와 심볼 서버 구성 및 예외 발생시 스택 오류 로그 기록, 내부적으로 진단용으로 설정할 수 있는 사용자 정의 변수값들을 마련한 정도입니다. 그 이외의 crash 같은 것들은 덤프가 가장 확실한 해결책이겠지요. 덤프는 뜨게 되면 Microsoft 측에도 기술지원을 받을 때 유용하게 사용할 수 있습니다. 때로는, 사용자로부터 대강의 시스템 설정을 받아서 직접 가상 PC를 구현하여 문제 재현을 하기도 합니다.

말씀하신 것처럼, 원격으로 연결할 수 있는 상황이라면 사용자의 양해를 구해서 Debugger for Windows 도구를 설치해서 덤프를 뜨는 것도 고려할 수 있을 것입니다. hang 이 걸리는 경우 덤프를 뜨면 대강의 위치를 파악할 수 있고, 그 코드만 집어낼 수 있다면 문제 해결을 위한 정보는 거의 수집된 것이나 다름없을테니까요.

경험으로 볼 때, CLR20r3 와 관련된 예외의 경우에는 일정 수준 이하의 서비스 팩이 설치된 경우에 최신 버전에서는 지원되는 메서드가 누락된 상황이 대부분이었습니다. (즉, 클라이언트 환경의 닷넷 세부 버전도 알아두는 것이 좋겠군요.)

WER은 저도 현재의 제니퍼 APM 도구에 적용해 보고 싶었는데, 아쉽게도 해당 웹 응용 프로그램의 문제까지도 전부 보고되는 부작용이 있어서 포기했었습니다. 하지만, 김기룡님의 경우에는 유용하게 쓸 수있는 팁이 아닐까 싶은데요. 현재 WER 관련해서 체계가 변한 걸로 알고 있습니다. 대개의 디버깅 서적에서 설명하고 있는 것들이 예전 기준으로 되어 있어서 아마 현재는 마이크로소프트 사이트에서 직접 정보를 얻어야 할 것입니다.

개인적으로도, 다양한 PC에서 설치되는 클라이언트 프로그램에 대한 문제 진단은 쉽지 않습니다. 배포하는 응용 프로그램이나 회사에서 개발되는 프로그램의 문제 진단을 가장 잘 할 수 있는 범위를 정하고 그에 맞게 적절하게 맞춰가는 것이 중요하겠군요.

정성태
2011-01-04 02시51분
[김기룡] 항상 친절하고 빠른 답변 감사드립니다.
향후를 위해 로그파일에 스택 오류도 함께 기록해 봐야겠습니다.*^^*

프로그램이 XP사용자를 타겟으로 만들어져서 .Net 2.0 SP2이상이면
문제가 없을 텐데 CLR20r3 오류가 발생한 사용자가 슬프게도
XP 사용자가 아닌 Win7 64Bit Home버전을 막 설치한 사용자인것 같더군요.

사용자가 구 버전의 .NET을 사용해서 발생하는 문제라면
Win 7이면 OS 자체에서 상위 버전의 .NET이 기본적으로 설치되어 있는데다
기본으로 설치된 버전의 .NET 제거도 안되기 때문에
Win7이나 Vista이상의 OS에서는 문제가 없을거라 생각했었는데 고민이군요.
혹시나 해서 Win7 32/64Bit에서도 여러번 테스트했지만 문제가 있거나 설치가 안된 경우는 처음이거든요.^^

외국에 계시는 분이라 아직은 원격 정보나 세부적인 자료를 수집하지는 못 했습니다.
조언대로 닷넷 세부 버전 부터 덤프 파일등을 수집해야 할 것 같은데
Debugger for Windows와 WER을 사용해 본 적이 없어서 검색 사이트에서 대충 해당 단어들로 검색하고 있습니다.^^;;

영문이어도 상관 없는데 혹시 추천할 만한 Link 자료를 구할 수 있을까요?
감사합니다.
[guest]

... [46]  47  48  49  50  51  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
3699박성훈2/18/201610530공부 방향성 질문 [2]
3698강준2/16/201611149Entity Framework 에서 Select for Update 가 가능한가요??? [1]
3697ds2/16/201610695어느 정도 문법을 알고 나면 [6]
3695Bere...2/15/201612945호출당한 메서드가 호출한 메서드를 알 수 있는 방법이 일반적인 방법 말고도 있을까요? [2]
3693조영준2/11/201613628UWP 앱을 만들고 있습니다. 죄송하지만 몇 가지 질문 드립니다. [4]
3692후배2/8/201612634html/css/js를 이용한 winForm의 UI표현이 가능 한가요? [3]
3690김대석2/5/201611099문의 드립니다. [2]
3687허재영2/3/201612696web api 보안관련 질문입니다. [2]
3685조진우2/1/201612633메인 응용 프로그램에서 DLL을 실시간으로 접근하여 사용하는데 이것을 모니터링 할 수 있을 까요? [1]
3684나그네1/27/201611986안녕하세요..wcf 관련하여 질문있습니다. [4]파일 다운로드1
3683김태형1/25/201612289 안녕하세요 저작도서를 구매하려는데 한가지 문의 사항이 있어서 질문드립니다. [1]
3681이영균1/8/201614859IE브라우저 추가기능관리의 항목을 사용함으로 c#코드로 변경을 하려고 합니다. [8]
3680후배1/6/201615063추천할만한 소켓 라이브러리 있으신가요? [2]
3679초록물꼬기1/6/201613938Parallel.For 에서 동기화문제에 관한 질문입니다. [11]파일 다운로드1
3678김민우1/3/201612369IHS 오류에 대한 질문입니다. [2]파일 다운로드1
3677초록색우산12/31/201513951HTTP 통신 - WebClient 이용시 한글깨짐 현상 발생 [2]
3676서정열12/31/201512800안녕하세요 WebService SoapExtensionImporter 에 대해서 질문드립니다. [3]
3675차가워12/30/201511857윈폼, 폼인폼 상황에서 하위컨트롤 포커스 문제 [1]
3673Sung...12/24/201512903UWP예외 발생 : 'System.Runtime.InteropServices.COMException'(mscorlib.ni.dll) 해결방법 [2]
3672Sung...12/23/201512155global::System.Diagnostics.Debugger.Break();가 노랗게 표시될시 [2]
3671이상준12/22/201516317한글 키보드 입력에 대해서 질문이 있습니다. [3]
3670Sung...12/18/201513088UWP 주기적으로 신호를 보내고 클라이언트에서 신호가 오면 받는 프로그램을 하려고 합니다. [5]
3669다비드12/18/201511373인터넷 임시파일 삭제 관련 질문. [1]
3668김치사발면12/16/201510836템플릿이 자꾸 초기화? 되버리네요 [1]
3667김치사발면12/15/201510748템플릿 설정 추가 질문 [1]파일 다운로드1
3666노태현12/15/201510160사용자별로 권한을 주고 볼 수 있는 데이터를 제한하려면 어떤 방법으로 접근하는게 좋을까요? [2]
... [46]  47  48  49  50  51  52  53  54  55  56  57  58  59  60  ...