2010-08-12 4 views
3

성능/메모리 프로파일 링에 적합한 Ants Profiler 4를 소유하고 있습니다.. 원격 컴퓨터를 프로파일 링 할 수있는 .net 메모리 프로파일 러

불행히도 로컬 컴퓨터에서만 작동하며 실행중인 프로세스에 연결할 수 없습니다. 하지만 프로덕션 서버에서만 발생하는 메모리 누수가 있습니다. vb.net로 작성된 Windows 콘솔 앱은 며칠 동안 상수 메모리 사용으로 정상적으로 실행되고 갑자기 24 시간 이내에 사용 가능한 모든 메모리를 소비하기 시작합니다.

실행중인 프로세스에서 일부 데이터를 수집하여 검사 할 수있는 방법이 있습니까?

+0

서버의 Windows 버전은 무엇입니까? 작업 관리자에서 메모리 덤프를 수행하는 것이 옵션 인 경우 WinDbg 경로를 수행 할 수 있습니다. –

답변

-1

최신 버전 (6.0)으로 업그레이드하십시오. 그건 Attach to Process를 지원합니다. 나는 생각합니다.

+0

잘 알고 계시 며, 평가/업그레이드하기에 좋은 시간이었습니다. –

+0

로컬 프로세스에만 연결하는 것처럼 보입니까? – Dan

+5

왜 이것을 답변으로 표시 했습니까? 프로세스에 연결은 로컬에서만 작동합니다. 7.4에서도 원격 컴퓨터 용 ANTS Memory Profiler는 지원되지 않습니다. – scobi

3

두 가지 큰 .NET 상용 프로파일 러인 ANTS 및 dotTrace는 여전히 메모리 할당의 원격 프로파일 링을 지원하지 않습니다. 슬픈 얼굴.

저는이 문제를 직접 조사 중이며 현재 두 가지 옵션을 찾고 있습니다. 먼저 마이크로 소프트의 CLR 프로파일입니다 :

http://clrprofiler.codeplex.com/

이 원격 프로파일 링을 지원하지 않지만, 그것은 전체 소스을 가지고있다. 나는 명령 행 옵션을 추가하여 프로세스에 첨부하고 메모리 스냅 샷을 가져 와서 디스크로 보낸 다음 분리하는 것은 너무 많은 일이라고 생각하지 않습니다. Powershell을 사용하여 라이브 서버에서 원격으로 실행 한 다음 필자의 여가 시간에 내 데스크톱에서 스냅 샷을 분석 할 수 있습니다.

내가 고려중인 또 다른 옵션은 라이브 앱에서 미니 덤프를 가져와 사용중인 메모리 보고서를 실행하는 데 sos를 사용하는 것입니다. 불행하게도 minydump는 this bug로 인해 procdump -r로 수행 할 수 없으므로 완전한 고정 덤프를 수행해야합니다.

중요한 일도 아니고 지금 막 시작했는데 아직 더 나은 해결책을 찾지 못했습니다.

+0

아, 여기 있습니다. 워크 스테이션 분석을 위해 프로덕션 서버에서 실행할 수있는 "메모리 스냅 샷"기능을 갖춘 상용 솔루션입니다. http://memprofiler.com/nmpcore.aspx – scobi