Как я могу отслеживать время ожидания сервера программно? - PullRequest
1 голос
/ 31 января 2011

У нас есть страница, которая принимает загрузки видеофайлов с использованием простого <input type="file". У нас были пользователи (в данном случае студенты), которые жалуются, что это не работает, но не предоставляют никаких сообщений об ошибках или чего-либо еще. Если действительно есть проблема, я полагаю, что это будет ошибкой тайм-аута при попытке загрузить большой файл при плохом соединении. Есть ли способ отследить это, чтобы узнать, что они пытаются сделать и в чем проблема?

1 Ответ

1 голос
/ 31 января 2011

Возможно, они пытаются загрузить файлы, размер которых превышает максимально допустимый размер файла или время ожидания запроса, которое может контролироваться в следующем разделе вашего web.config:

<system.web>
    <httpRuntime executionTimeout="110" maxRequestLength="20000" />
</system.web>

Кроме того, EventLog сервера, вероятно, содержит некоторые ошибки, которые могут дать вам больше подсказок.

Еще одна полезная вещь - подписаться на событие Application_Error в вашем Global.asax и попытаться отследить все необработанные исключения, которые могут возникнуть:

protected void Application_Error(object sender, EventArgs e)
{
    HttpApplication app = (HttpApplication)sender;
    HttpContext context = app.Context;
    Exception ex = context.Server.GetLastError();
    // TODO : use your favourite logging framework to trace the exception
    // so that you can later see what went wrong. At least you should get
    // the exception stacktrace.
}
...