Проблема с CLRProfiler - PullRequest
       61

Проблема с CLRProfiler

3 голосов
/ 14 января 2009

Я пытаюсь использовать Microsoft CLRProfiler для профилирования моего довольно большого приложения, и оно падает, когда оно пытается записать (или прочитать) файл журнала. По иронии судьбы, точная ошибка задокументирована на сайте MS 'Feedback' как не воспроизводимая и, похоже, никогда не была исправлена. Я получаю NullReferenceException по адресу:

CLRProfiler.ReadNewLog.ReadFile(Int64 startFileOffset, Int64 endFileOffset, ReadLogResult readLogResult)
at CLRProfiler.MainForm.checkProcessTimer_Tick(Object sender, EventArgs e)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

У кого-нибудь есть идеи, как мне получить помощь или, в идеале, заставить эту чертову штуку работать правильно? Жалобы на помощь в MSDN были проигнорированы ... Спасибо!

Ответы [ 3 ]

4 голосов
/ 14 января 2009

CLR Profiler довольно нестабилен, у меня также было много сбоев с ним.

Один совет, который я слышал на PDC, - это использовать его только как инструмент снимка: не собирайте информацию об использовании mem во время работы приложения, но останавливайте приложение в точке, где вы знаете, что у вас есть mem уже проблема, и сделайте снимок памяти.

Таким образом, он намного более стабилен, и обычно из справочного графика вы все равно можете узнать, что является причиной утечки.

2 голосов
/ 14 января 2009

Я подозреваю, что это мертвый проспект. Возможно попробуйте jetBrains dotTRACE ; Вы можете получить бесплатную 10-дневную пробную версию , чтобы узнать, подходит ли она.

0 голосов
/ 14 января 2009

Мы столкнулись с подобной проблемой при отладке сбойного мамонта на удаленном сервере Citrix, который CLRProfiler не смог проанализировать.

Нам удалось найти проблему с помощью WinDbg

Кроме того, это также может помочь CorDbg

...