Как проверить, какой тайм-аут выполняется в .net C#

#c# #.net #iis

#c# #.net #iis

Вопрос:

Я использую пользовательское приложение на C # (.net 4.8 с IIS 8.5). Приложение позволяет мне запускать отчет (по базе данных Oracle) и экспортировать отчет в csv. Этот конкретный отчет больше и время ожидания истекает примерно через 20 минут. Есть несколько конфигурационных файлов, которые позволяют увеличивать время ожидания, что я и сделал. Я также внес изменения в IIS, где я могу видеть тайм-ауты (т. Е. пул приложений и asp). Однако я все еще сталкиваюсь с проблемой. Кто-нибудь может предоставить мне несколько основных идей по устранению неполадок (например. любые инструменты), которые я могу изучить, чтобы точно подтвердить, какой тайм-аут использует мое приложение?

спасибо, Гэри

Комментарии:

1. Какое сообщение об ошибке вы получаете? Какая система отчетности?

2. Привет, ошибка в журнале событий Windows Server 2012 — «System. Исключение AggregateException: произошла одна или несколько ошибок. —> System.Net.WebException: время ожидания операции истекло «.

3. я также обновил web.config и все настройки тайм-аута, которые я могу найти для приложения .net, но все равно получаю ту же ошибку ровно через 20 минут.

4. Вам нужно найти и опубликовать здесь код, который выполняет веб-запрос, вызывающий это исключение System.Net.WebException.

Ответ №1:

если вы устанавливаете сеанс в своем коде, то время ожидания состояния сеанса IIS по умолчанию составляет 20 минут. вы можете изменить редактирование файла web.conifg:

       <sessionState timeout="120" cookieless="AutoDetect">
  

Измените значение времени ожидания рабочего процесса IIS (по умолчанию: 20 минут)

введите описание изображения здесь

попробуйте установить тайм-аут выполнения

 <system.web>
    <httpRuntime executionTimeout="90000" maxRequestLength="1048576" />
  

введите описание изображения здесь