Захват дампа памяти - .NET - PullRequest
       6

Захват дампа памяти - .NET

1 голос
/ 09 февраля 2009

Поиск предложений по способу захвата дампа памяти, когда пользователь работает под терминальными службами. Я пытался использовать «AdPlus» с WinDbg, но приложение работает под терминальными службами, и похоже, что эта комбинация ему не нравится.

Это приложение VB.NET.

Мой вопрос похож на Инструмент для анализа дампов памяти приложений .NET , но ему нужно разрешить запуск приложения под терминальными службами без внешних диалогов. Я пробовал WinDbg в тихом режиме, но сеанс вылетает.

Ответы [ 2 ]

2 голосов
/ 09 февраля 2009

adplus должен нормально работать в терминальных службах - мы часто используем его таким образом. Как именно вы пытаетесь его использовать.

Одна вещь, на которую следует обращать внимание с сеансами обслуживания терминала, - это если у самого сеанса есть время простоя. Мы часто подключали клиент к нашей услуге через раздел служб терминалов, а потом удивлялись, почему сервис умер через час. Решением этой проблемы было заставить соединение службы терминалов использовать сеанс консоли (/ console в командной строке для mstsc).

0 голосов
/ 09 февраля 2009

Поскольку adplus запускается из командной строки, если вы выйдете из системы или прекратите сеанс служб терминалов, сценарий остановится.

Одной из возможностей, которые следует рассмотреть, является использование DebugDiag, он работает как служба «Локальная система», поэтому он не зависит от сеанса вошедшего в систему интерактивного пользователя.

Вы можете настроить службу так, чтобы она периодически планировала дампы памяти и позже просматривала / анализировала результаты в другом компоненте DebugDiag, все настраиваемые с помощью сценариев.

Полезные ссылки и загрузка:

http://blogs.msdn.com/sukeshak/pages/ddintro.aspx

http://blogs.msdn.com/tess/archive/2009/01/23/net-hang-analyzing-debug-diag-output.aspx

http://www.microsoft.com/downloadS/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&displaylang=en

...