- PVSM.RU - https://www.pvsm.ru -
Новые функции Visual Studio Online [1] о которых мы рассказывали на запуске Visual Studio 2013 включают в себя интересную технологию Application Insights [2]. Этот инструмент позволяет осуществлять мониторинг приложения и анализировать важные параметры работоспособности во многих аспектах. Исключительные ситуации, параметры производительности, нагрузка на процессор, сетевую и дисковую инфраструктуру – все эти данные можно получить в виде лаконичного представления, которое позволяет затем принимать важны решения. Интересным так же является то что вы можете использовать Application Insights для мониторинга приложений для Windows 8 и Windows Phone 8.
Уже скоро технология Application Insights будет доступна широкому кругу пользователей Visual Studio Online, а если вы входите в число тех, кто получил доступ к предварительной версии, то вы сможете попробовать эти возможности уже сейчас.
Для того чтобы включить возможности телеметрии в вашем приложении в первую очередь нужно получить Access Key в настройках Application Insights.
Следующим шагом помощник сам выведет вам на экран инструкции о том как начать мониторинг вашего приложения, в том числе подскажет Access-Key.
Далее вам необходимо установить Nuget Package в ваше приложение:
Для того чтобы воспользоваться функциями мониторинга в вашем приложении теперь достаточно подключить область видимости и в стартовой функции приложения включить режим мониторинга:
using Microsoft.ApplicationInsights.Telemetry.WindowPhone;
…
App()
{
ClientAnalyticsSession.Default.Start("KEY00000-0000-0000-0000-000000000000");
}
Этих шагов будет достаточно для того чтобы начать получать базовые сведения о работе вашего приложения. Через 15-20 минут в панели мониторинга вы увидите данные о запусках вашего приложения:
Естественно, вы можете создавать свои собственные метрики и затем добавлять их на панель мониторинга, так как она легко настраивается:
Например, вы хотите анализировать данные о том, сколько пользователей прошли игру до конца. В обработчике этого события просто вставляем код, который регистрирует это событие в Application Insigts:
ClientAnalyticsChannel.Default.LogEvent("EndOfGame");
Если вам нужны дополнительные параметры аналитики, которые позволят осуществлять фильтрацию по некоторым параметрам, достаточно добавить измерения в свойства события. Например, мы хотим сделать фильтр, который позволит анализировать сколько пользователей прошли игру до конца на различных уровнях сложности:
var properties = new Dictionary<string, object>()
{ {"difficulty", currentGame.difficulty}};
ClientAnalyticsChannel.Default.LogEvent("EndOfGame", properties);
В дополнение к простым типам событий, так же можно анализировать события привязанные к времени. Например, вы хотите проанализировать, сколько времени занимает веб-запрос осуществляющийся из вашего мобильного приложения. Для этого необходимо обернуть анализируемый участок кода в контекст TimenAnalyticsEvent и вызвав функции StartTimedEvent() и End().
TimedAnalyticsEvent token = ClientAnalyticsChannel.Default.StartTimedEvent("EventName"));
// ... осуществляем какую то долгую функцию в приложении ...
if (/*проблема*/)
token.Cancel();
else
token.End(); // запись события.
Вам останется только сконфигурировать ваши информационные панели и вы получите возможность принимать аналитические решения на основе достоверной информации о работе вашего приложения.
Более подробно об этой технологии и ее возможностях вы узнаете из доклада Брайана Келлера [3] 6 февраля на конференции ALM Summit [4]. Напоминаем, что до конца декабря действует специальная цена. Регистрируйтесь уже сейчас чтобы получить возможность пообщаться с сотрудниками Microsoft и индустриальными экспертами на главной конференции по управлению жизненным циклом приложений!
Автор: dmandreev
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/windows-phone/50112
Ссылки в тексте:
[1] Visual Studio Online: http://habrahabr.ru/company/microsoft/blog/202064/
[2] Application Insights: http://habr.habrastorage.org/post_images/311/8a6/428/3118a64286f5902e54a006c2e026c1a3.png
[3] Брайана Келлера: http://habrahabr.ru/company/microsoft/blog/203676/
[4] ALM Summit: http://events.techdays.ru/ALM-Summit/2014-02/
[5] Источник: http://habrahabr.ru/post/205020/
Нажмите здесь для печати.