У нас есть приложение, размещенное на Windows Server 2012 и IIS 7.5, но приложение вылетало, когда его пул приложений превышал 4,5 ГБ при небольшом количестве пользователей. Это стек ошибок в средстве просмотра событий Windows:
Description: The process was terminated due to an unhandled exception.
Exception Info: System.OutOfMemoryException
Stack:
at System.Collections.ArrayList..ctor(Int32)
at System.Web.RequestTimeoutManager.CancelTimedOutRequests(System.DateTime)
at System.Web.RequestTimeoutManager.TimerCompletionCallback(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.TimerQueueTimer.CallCallback()
at System.Threading.TimerQueueTimer.Fire()
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
Как лучше всего найти оскорбительную деталь? Как мы можем отслеживать приложение и то, что вызывает сбой пула?