Картинка блога

Понятно, что производить отладку веб страниц в ASP.NET можно с помощью дебагера в VS. Для этого нужно присоединить процесс w3wp.exe и расставить точки прерывания (breakpoints).
Но есть еще один способ проследить ход загрузки страницы — с помощью trace функциональности. Этот метод позволяет также проследить узкие места в производительности сайта (profiling).

Состав информации trace.

В блок trace входит:

  • Request Details — основная информация о запросе.
  • Trace Information — время выполнения основных событий страницы.
  • Control Tree — дерево созданных блоков страницы с основной информацией.
  • Session State — состояние переменной Session.
  • Application State — состояние переменной Application.
  • Request Cookies Collection — список полученных cookies.
  • Response Cookies Collection — список созданных cookies.
  • Headers Collection — информация о заголовках.
  • Form Collection — информация о посылаемой форме.
  • Querystring Collection — информация о строке запроса.
  • Server Variables — состояние переменной Server.

Конфигурация

Для настройки trace достаточно добавить следущий блок в web.config файл:



enabled=«true»
requestLimit=«10»
pageOutput=«false»
traceMode=«SortByTime»
localOnly=«true»
/>

где:

  • Enabled — Включить или выключить trace.
  • PageOutput — Если значение этого параметра равно «true» содержимое trace будет писаться в конец страницы. Если «false» — весь trace будет писаться в специальный файл — http://>applicationname
  • RequestLimit – Определяет количество запросов, которые нужно хранить для Trace.axd файла.
  • TraceMode — указывает, как нужно сортировать содержимое trace, возможные значения: SortByTime — по времени, SortByCategory — по категории сообщения (warn или write).
  • LocalOnly — ограничивает доступ к данным диагностики от загрузки с других машин.

Есть также возможность отладки только одной страницы, для этого нужно добавить trace=»true» в тег @Page

>% @Page language=«C#» debug=«true» trace=«true» %<

или непосредственно в код страницы:

Trace.IsEnabled = True

Собственные сообщения в трейс.

Разработчик может писать собственные сообщения в trace. Для этого нужно использовать объект Trace в классе Page.

protected void Page_Load ( ) {
Trace.Write («category», «Example trace» );
}

Немного о файле Trace.axd

Trace.axd — это файл создается автоматически. Сюда сохраняется история запросов с соответствующими параметрами. Этот файл хранит список последних запросов к приложению. Страница деталей имеет тот-же вид, что и Trace на основе страницы.
URL файла — http://>ApplicationName</trace.axd».

Метки:, ,