Лабораторная работа - microsoft · 2016-09-22 · Лабораторная...

16
Лабораторная работа Выявление проблем в промышленной среде с помощью IntelliTrace и Visual Studio 2015 Lab version: 14.0.23107.0 Last updated: 9/11/2015

Upload: others

Post on 19-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Лабораторная работа

Выявление проблем в промышленной среде с помощью IntelliTrace и Visual Studio 2015

Lab version: 14.0.23107.0

Last updated: 9/11/2015

Page 2: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде
Page 3: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

TABLE OF CONTENT

ВЫЯВЛЕНИЕ ПРОБЛЕМ В ПРОМЫШЛЕННОЙ СРЕДЕ С ПОМОЩЬЮ INTELLITRACE И VISUAL STUDIO 2015 ........... 1

PREREQUISITES ...................................................................................................................................................... 4

О КОМПАНИИ FABRIKAM FIBER ........................................................................................................................... 4

УПРАЖНЕНИЯ ....................................................................................................................................................... 4

Page 4: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Резюме

IntelliTrace, впервые представленный в Visual Studio 2010, значительным образом изменил

процесс отладки, позволив разработчикам воспроизводить выполнение приложения. Используя

такие события, как доступ к файлу и реестру, исключения, вызовы методов, файл, создаваемый

IntelliTrace файл содержит подробную информацию о поведении приложения. Из этой

лабораторной работы вы узнаете, как использовать Visual Studio 2015 IntelliTrace для разработки и

тестирования, как IT-администраторы могут использовать файлы IntelliTrace, полученные из

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

выявлять проблемы.

Примечание: виртуальная машина была настроена таким образом, что исходники и символы

сборок архивируются, что означает, то есть могут быть привязаны к конкретной сборке. Для

эффективного использования IntelliTrace прочитайте подробную статью.

Prerequisites

Для выполнения лабораторной работы вам понадобится виртуальная машина с Visual Studio 2015

от Microsoft. Подробнее про то, где загрузить и как ее использовать, здесь.

О компании Fabrikam Fiber

Эти лабораторные работы в качестве основы для сценариев, о которых вы узнаете в процессе,

оперируют несуществующей компанией Fabrikam Fiber. Fabrikam Fiber занимается кабельным

телевидением и сопутствующими сервисами в США. Компания быстро растет и уже начала

использовать Microsoft Azure для того, чтобы масштабировать свой веб-сайт для обслуживания их

запросов и отслеживания деятельности инженеров. Компания использует локальное приложение

ASP.NET MVC для управления заказами клиентов.

В этих лабораторных работах вы изучите сценарии, включенные в рабочий процесс команды

разработки и тестирования Fabrikam Fiber. Команда, состоящая из 8-10 человек, решила

использовать средства управления жизненным циклом проектов Visual Studio 2015 для того, чтобы

контролировать программный код, выполнять сборки, тестировать веб-сайты, планировать и

отслеживать происходящее с проектом.

Упражнения

Эта лабораторная работа включает в себя следующие упражнения:

Page 5: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

1. IntelliTrace в промышленном использовании

2. Отладка с помощью файлов IntelliTrace

Примерное время выполнения лабораторной работы: 60 минут.

Упражнение 1: IntelliTrace в

промышленнои среде

В этом упражнении вы научитесь разворачивать и использовать IntelliTrace в промышленную

среду для получения информации о приложении ASP.NET.

1. Войдите под аккаунтом Brian Keller (VSALM\Brian). Пароль: P2ssw0rd.

2. Откройте в Internet Explorer сайт FF Customer Portal – это портал поддержки

пользователей Fabrikam Fiber Support. (http://www.fabrikam.com).

Изображение 1

Портал Fabrikam Fiber

3. Листайте запросы до тех пор, пока не получите ошибку сервера. Информация о запросах

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

Page 6: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 2

Ошибка сервера

4. Закройте Internet Explorer.

5. Первым шагом по выявлению причины ошибки обычно является проверка логов и

стектрейса. Если там нет достаточной информации или ошибку сложно воспроизвести в

среде разработки, процесс выявления и исправления ошибки может занять долгое время,

при этом установка Visual Studio или других средств отладки в промышленную среду

может быть невозможна.

6. Посмотрим, как развернуть и использовать IntelliTrace в промышленную среду для сбора

отладочных данных. Перейдите на диск C:. и в папке IntelliTrace расположены файлы

IntelliTrace, в LogFileLocation будут положены файлы, которые будут записаны позже.

Изображение 3

Файлы IntelliTrace

7. Нажмите правой кнопкой на папке LogFileLocation. Нажмите Properties. Нам нужно

убедиться, что IIS Application Pool имеет разрешение на использование этой папки.

Page 7: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

8. Нажмите на Security и найдите FabrikamFiber.Extranet.Web. Разрешения уже были

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

Изображение 4

Настройка безопасности

9. Нажмите Escape.

10. IntelliTrace можно развернуть в промышленную среду, используя копирование с помощью

xcopy содержимого пакета IntelliTrace Collector for Visual Studio 2015.

Примечание: пакет IntelliTraceCollection.cab находится в

%programfiles(x86)%\Microsoft Visual Studio

14.0\Common7\IDE\CommonExtensions\Microsoft\IntelliTrace\14.0.0.

Подробнее про установку можно почитать на MSDN.

Page 8: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 5

Содержимое IntelliTraceCollection.cab

Примечание: в рамках лабораторной работы промышленная среда расположена там же,

где и среда разработки, но обычно это не так.

11. Запустим IntelliTrace, чтобы собрать данные диагностики по веб-приложению. Здесь есть

две опции – можно пройти шаги с 12 по 16 или можно запустить StartIntelliTraceDemo.cmd

из папки Scripts на рабочем столе и сразу перейти к шагу 17.

Note: Файл StartIntelliTraceDemo.cmd должен быть запущен в режиме администратора.

12. Запустите PowerShell в режиме администратора.

Page 9: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 6

Запуск PowerShell в режиме администратора

13. Импортируйте модули IntelliTrace, выполнив команду:

Import-Module c:\IntelliTrace\Microsoft.VisualStudio.IntelliTrace.PowerShell.dll

14. Для просмотра доступных команд IntelliTrace выполните следующую команду:

Get-Command *IntelliTrace*

Изображение 7

Обзор команд «IntelliTrace»

Примечание: доступны команды запуска и остановки сбора IntelliTrace, а также

получения данных по требованию во время сбора данных.

15. Для того, чтобы посмотреть справку по команде, выполните следующую команду:

Get-Help Start-IntelliTraceCollection

Page 10: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 8

Справка для команды Start-IntelliTraceCollection

Примечание: секция REMARKS в справке содержит примеры использования команды

16. Можно запускать сбор данных. Выполните следующую команду для запуска сбора данных

из веб-приложения FabrikamFiber.Extranet.Web и сохранения файлов в папке.

Start-IntelliTraceCollection "FabrikamFiber.Extranet.Web"

c:\IntelliTrace\collection_plan.ASP.NET.trace.xml c:\LogFileLocation

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

17. Нажмите “Y”, Enter.

Изображение 9

Подтверждение запуска сбора

Примечание: если появляются ошибки типа «App pool не имеет ключа на запись»,

перезапустите выполнение команды.

Page 11: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

18. Откройте в Internet Explorer сайт FF Customer Portal.

19. IntelliTrace настроен на сбор отладочных данных согласно плану сбора. Нажмите на

service tickets и воспроизведите ошибку, которая была ранее. Как только она возникнет,

закройте Internet Explorer.

Изображение 10

Воспроизведение ошибки

20. Остановим сбор для возвращения сервера в нормальное состояние. Есть два варианта, как

сделать это – пройти шаги с 21 по 23 или запустить StopIntelliTraceDemo.cmd из папки

Scripts на рабочем столе Desktop и перейти к шагу 23.

21. Выполните команду PowerShell, которая покажет статус сбора.

Get-IntelliTraceCollectionStatus -ApplicationPool "FabrikamFiber.Extranet.Web"

Изображение 11

Статус сбора

22. Остановите сбор:

Stop-IntelliTraceCollection "FabrikamFiber.Extranet.Web"

Примечание: как альтернатива остановке сбора можно скопировать текущий лог

командой Checkpoint-IntelliTraceCollection. Это дает возможность посмотреть собранные

данные, не останавливая сбор.

23. Введите “Y” и нажмите Enter..

Page 12: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 12

Остановка сбора

24. В реальной ситуации мы высылаем файл IntelliTrace разработчику или тестировщику.

Упражнение 2: отладка с помощью

фаи лов IntelliTrace

В этом упражнении вы научитесь использовать файлы IntelliTrace для выявления причины ошибки.

1. Нажмите два раза на файле для загрузки в Visual Studio.

Изображение 13

Загрузка файла IntelliTrace

2. В окне IntelliTrace Summary изучите секцию Exception Data. Здесь доступны все

исключения, которые произошли во время работы приложения, и по умолчанию они

отсортированы от самого нового к самому старому.

Page 13: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 14

Исключения

3. Нажмите на последнее исключение System.NullReferenceException (по факту, возникшее

первым) и нажмите на Debug Newest Exception in Group для запуска отладочной сессии

IntelliTrace.

Page 14: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 15

Запуск отладки события

4. После запуск сессии будет автоматически загружена панель IntelliTrace, код, в котором

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

функциональности IntelliTrace.

Page 15: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 16

Отладка исключения

5. В Locals видно событие NullReferenceException в методе контроллера GetServiceTicket и

то, что значение ticketId было равно 3. Мы можем завести баг в TFS и приложить файл

IntelliTrace для того, чтобы помочь разработчикам найти решение этой проблемы.

Изображение 17

Определение причины ошибки

6. Выберите .diagsession – здесь находятся дополнительные данные диагностики.

Page 16: Лабораторная работа - Microsoft · 2016-09-22 · Лабораторная работа Выявление проблем в промышленной среде

Изображение 18

Данные диагностики

7. Вы видите данные диагностики и событие NullReferenceException вместе с данными о том,

когда оно возникло первый раз. Это представление помогает нам связать ошибку с

контекстом других событий, которые произошли перед исключением – например, была

проблема с запросом SQL – мы это можем увидеть в логе.

Изображение 19

Данные диагностики

To give feedback please write to [email protected]

Copyright © 2015 by Microsoft Corporation. All rights reserved.