ASP.NET trace как один из инструментов отладки.

Понятно, что производить отладку веб страниц в 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 файл:

<!–  APPLICATION-LEVEL TRACE LOGGING
Application-level tracing enables trace log output for every page within an application.
Set trace enabled=”true” to enable application trace logging.  If pageOutput=”true”, the
trace information will be displayed at the bottom of each page.  Otherwise, you can view the
application trace log by browsing the “trace.axd” page from your web application
root.
–>

<trace
enabled=“true”
requestLimit=“10″
pageOutput=“false”
traceMode=“SortByTime”
localOnly=“true”
/>

где:

  • Enabled - Включить или выключить trace.
  • PageOutput - Если значение этого параметра равно “true” содержимое trace будет писаться в конец страницы. Если “false” - весь trace будет писаться в специальный файл - http://<ApplicationName>/trace.axd.
  • 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.

Один комментарий на “ASP.NET trace как один из инструментов отладки.”

  1. yamayka пишет:

Оставить комментарий