Поделиться через


Службы WCF и средство отслеживания событий для Windows

В примере ETWTracing показано, как использовать аналитику трассировки в Windows Communication Foundation (WCF) для выдачи событий в трассировке событий для Windows (ETW). Аналитические трассировки — это события, создаваемые в ключевых точках стека WCF, которые позволяют устранять неполадки служб WCF в рабочей среде.

Аналитика трассировки в службах WCF — это трассировка, которая может быть включена в рабочей среде с минимальным воздействием на производительность. Отслеживаемые события передаются в сеанс трассировки событий Windows.

Этот пример включает базовую службу WCF, в которой события отправляются из службы в журнал событий, который можно просмотреть с помощью Просмотр событий. Также можно запустить выделенный сеанс ETW, который прослушивает события из службы WCF. Данный образец включает скрипт для создания выделенного сеанса трассировки событий Windows, хранящего события в двоичном файле, который можно прочесть с помощью средства просмотра событий.

Использование этого образца

  1. Откройте файл решения EtwAnalyticTraceSample.sln с помощью Visual Studio.

  2. Чтобы создать решение, нажмите клавиши CTRL+SHIFT+B.

  3. Чтобы запустить решение, нажмите клавиши CTRL+F5.

    В веб-браузере щелкните Calculator.svc. В браузере должен появиться URI WSDL-документа для службы. Скопируйте этот URI.

    По умолчанию служба начинает прослушивать запросы через порт 1378 http://localhost:1378/Calculator.svc.

  4. Запустите тестовый клиент WCF (WcfTestClient.exe).

    Тестовый клиент WCF (WcfTestClient.exe) находится в \<Visual Studio Install Dir>\Common7\IDE\WcfTestClient.exe.

  5. В тестовом клиенте WCF добавьте службу, выбрав "Файл", а затем добавьте службу.

    Добавьте адрес конечной точки в поле ввода. Значение по умолчанию — http://localhost:1378/Calculator.svc.

  6. Откройте приложение просмотра событий.

    Перед вызовом службы запустите Просмотр событий и убедитесь, что журнал событий прослушивает события отслеживания, создаваемые службой WCF.

  7. В меню "Пуск" выберите Администратор istrative Tools, а затем Просмотр событий. Включите журналы аналитики и отладки.

  8. В представлении дерева в Просмотр событий перейдите к Просмотр событий, приложениям и службам, Microsoft, Windows и приложениям application Server. Щелкните правой кнопкой мыши серверные приложения, выберите "Вид" и " Показать журналы аналитики и отладки".

    Убедитесь, что параметр Show Analytic and Debug Logs проверка.

  9. Включите журнал Аналитики.

    В представлении дерева в Просмотр событий перейдите к Просмотр событий, приложениям и службам, Microsoft, Windows и приложениям application Server. Щелкните правой кнопкой мыши "Аналитика" и выберите "Включить журнал".

Проверка службы

  1. Вернитесь к тестовому клиенту WCF и дважды щелкните Divide и сохраните значения по умолчанию, которые указывают знаменатель 0.

    Если знаменатель равен 0, служба выдает ошибку.

  2. Просмотрите события, переданные из службы.

    Вернитесь к Просмотр событий и перейдите к Просмотр событий, приложениям и службам, Microsoft, Windows и приложениям application Server. Щелкните "Аналитика" правой кнопкой мыши и выберите "Обновить".

    События аналитического отслеживания WCF отображаются в средстве просмотра событий. Обратите внимание, что для возникшей ошибки в средстве просмотра событий отображается событие аналитического отслеживания.

  3. Повторите шаги 1 и 2, используя уже допустимые входные значения. Значением параметра N2 может быть любое число, отличное от 0.

    Обновите канал аналитики, чтобы убедиться, что события WCF не включают событий, связанных с ошибкой.

Образец иллюстрирует передачу событий аналитического отслеживания из службы WCF.

Очистка (необязательно)

  1. Откройте Средство просмотра событий.

  2. Перейдите к Просмотр событий, журналам приложений и служб, Microsoft, Windows и приложениям Application-Server. Щелкните правой кнопкой мыши "Аналитика " и выберите "Отключить журнал".

  3. Перейдите к Просмотр событий, журналам приложений и служб, Microsoft, Windows и приложениям Application-Server. Щелкните "Аналитика" правой кнопкой мыши и выберите "Очистить журнал".

  4. Выберите параметр Clear, чтобы очистить события.

См. также