Я не могу увидеть подробный вывод ошибки сервера? - PullRequest
0 голосов
/ 09 сентября 2011

В asp.net я не вижу подробного сообщения сервера при наличии ошибки. Я имею в виду, когда вы открываете браузер и перемещаетесь, чтобы сказать http://[errorpage].com, и на странице отображается что-то вроде "внутренняя ошибка сервера - сервер занят" - конечно, вы знаете, что сервер занят ... но с моим приложением я получаю только ошибка 503 - но я не могу зайти так далеко, как браузер Mozilla, и не может увидеть все сообщение об ошибке. Я пытался поймать и отобразить исключение - но ... нет. Также я попытался разобрать источник с регулярным опытом. - но я думаю, что net останавливается всякий раз, когда присутствует ошибка, и не может перейти к синтаксическому анализу - также ... без попытки перехвата: то же самое.

Ответы [ 4 ]

1 голос
/ 09 сентября 2011

Как правило, не включайте это на живых сайтах.В вашем файле web.config добавьте / отредактируйте следующее:

<customErrors mode="Off" />

Начнется показ подробной информации об ошибке.Но опять же, НЕ делайте этого на работающем сервере или, по крайней мере, не навсегда, так как это представляет угрозу безопасности.

0 голосов
/ 09 сентября 2011

Если вы включите Мониторинг работоспособности ASP.NET , ASP.NET запишет сведения об ошибке в журнал событий Windows или в любое другое указанное вами место назначения.

0 голосов
/ 09 сентября 2011

Ваш вопрос немного смешной, но вы должны рассмотреть, какая обработка ошибок происходит в стеке, если это происходит:

try{
   //Something
}
catch(Exception){
   //Handle it some how
   throw new Exception("Broken");
}

тогда это приведет к потере всего стека вызовов, прежде чем будет сгенерировано новое исключение. Если это происходит, это можно исправить так:

try{
   //Something
}
catch(Exception){
   //Handle it some how
   throw;
}

это продолжает выдавать исходное исключение с трассировкой стека.

0 голосов
/ 09 сентября 2011

Лучший способ сделать это - внедрить обработку ошибок в ваш код, а затем сохранить ошибки где-нибудь (база данных, файл ...). Затем вы можете просмотреть свой файл и получить полную ошибку

, например

try {
   //your code here
}
catch(Exception ex)
{
   //write to file ex.ToString() to see whole stack trace, or ex.Message to see just message like "index out of bounds"
}

, а также, если вы хотите получить ошибки в браузере, включите его в конфигурационном файле

см. Эту ссылку для деталей http://msdn.microsoft.com/en-us/library/h0hfz6fc.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...