Download - DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Transcript
Page 1: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Aprenda mais sobre sua aplicação e seus usuários com

Application Insights

DNAD 2015 –27/06/2015

Igor Abade V. Leite@igorabade

Page 2: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Desde 2006• Visual Studio Team System• Visual Studio ALM

Sobre mim

@igorabadewww.tshooter.com.br

Desde 2010• Consultoria• Desenvolvimento• TreinamentoDemocracia Organizacional

Page 3: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Antes de começarmos…

Page 4: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Devs são esquisitos

Page 5: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights
Page 6: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights
Page 7: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

“Build the right thingvs.

Build the thing right”

Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 8: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Devs são bons em montar coisas.

Page 9: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Das mais simples...

Page 10: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

... às nem tão simples assim

Page 11: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

http://www.slideshare.net/AgileOnTheBeach/first-build-the-right-thing

Não basta “fazer certo”

Page 12: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights
Page 13: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights
Page 14: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

It’s all about feedback

Page 15: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Coletando feedbackAprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 17: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights
Page 18: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Top 5 Most-Used Commands in Microsoft Word 2003– Paste– Save– Copy– Undo– Bold

“Paste itself accounts for more than 11% of all commands used, and has more than twice as much usage as the #2 entry on the list, Save”

Já tinha reparado nisto?

http://blogs.msdn.com/b/jensenh/archive/2006/04/07/570798.aspx

Page 19: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Customer Experience Improvement Program– “Service Quality

Monitoring” (SQM)

• Duas partes– Application Analytics– Application Performance

Monitoring

Já tinha reparado nisto?

Page 21: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Vai ficar pior!

“By 2017, 94.5% of downloads will be for free apps; Less than 0.01% of consumer mobile apps will be considered a financial success”

-Gartner

Page 22: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Telemetria: Batalha em dois fronts

Application Analytics (AA)

• Foco no usuário• Padrões de utilização

• Funcionalidades

Application Performance

Monitoring (APM)

• Foco na aplicação• Desempenho• Disponibilidade

Page 23: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Diversas opçõesApplication Analytics

Application Perf. Monitoring

Microsoft Application Insights

Page 24: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Application InsightsAprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 25: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

O que é o Application Insights• Novo serviço de monitoramento de

aplicações do Azure– APM + AA “as-a-service”

• Coleta indicadores de desempenho, logs e erros de aplicações em diversas plataformas– Server-side ou cliente-side– Apps pn-premise, na nuvem, em

devices

Page 26: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Como funciona

Telemetria chega ao serviço do Application Insights na nuvem, onde é processado e armazenado2

Dados de desempenho e utilização são disponibilizados no Portal do Azure (portal.azure.com)3

Telemetria é coletada em cada camada: apps móveis, servidores e browsers1

Page 27: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Fontes de telemetria

plataforma

infraestrutura

aplicação

1

3

4

5

6

Monitoramento Outside-in Pings de URL e Testes Web a partir de 16pontos de presença globais

Traces gerados pelo desenvolvedorQualquer coisa que o dev queira mandar parao Application Insights

Comportamento da aplicaçãoDispensa codificação – dependências de serviço,consultas, tempo de resposta, exceções, logs, etc.

Desempenho da infraestruturaContadores de desempenho de sistema

“Meta-telemetria”Código-fonte, builds, implantações, mudançasde configuração

2Comportamento do usuárioComo a aplicação está sendo utilizada?

Page 28: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Plataformas suportadasServer side

• .NET (incl. ASP.NET 5)

• Java• Node.js• PHP• Python• Ruby• WordPress

Client side

• Browser• Javascript

• Windows• Win Forms, WPF• Windows Store

• OSX

Devices

• Android• iOS• Windows Phone

Application Insights SDK

Page 29: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Adoção gradual dos recursos do Application Insights

Por onde começar?

Disponibilidade básica

Desempenho básico

Utilização da aplicação

Telemetria Personalizada

Não-invasivo

Alterações de Código

Page 30: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Dashboards• Página inicial

oferece resumo da situação da aplicação– Disponibilidade– Desempenho– Utilização

• Linha do tempo sincronizada– Correlação de

eventos e métricas

Page 31: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

demoDashboards

Page 32: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Detailed insights with click of a button • Correlate performance

& usage in a single view

• Pinpoint problems and help answer questions like, “Do I have network performance issues that hurt my user adoption?”

• Click on specific metric and drill into detailed information, answer questions such as “what request is failing the most?”

Page 33: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Quickly identify & triage Availability issues

• Reduce MTTD by testing the service availability from Application Insight’s global points of presence, using URL ping tests and rich multi-step web tests

• Simple alert setting rules provide proactive notifications about abnormal service or website behaviors

• Wide set of Notifications based on VS Web Test synthetic transactions to detect failures in critical application flows, real-time metric data provided by Application Insights APIs and Windows Performance counters.

Page 34: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Quickly diagnose issues by accessing application logging instrumentation augmented by additional runtime information collected for exceptions, requests and client side page execution.

• Significantly speed up incident mitigation, minimizing MTTR and improve application SLAs with reproducible test cases

Diagnose & Solve performance problems

Page 35: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Learn & improve with usage insights

• Understand where your users are coming from and where they spend most of the time

• Prioritize investments and continuously improve application based on user activity and usage trends

Page 36: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Extend telemetry data• Add Custom Metrics &

Events, to help better track and analyze user activity

• Download data collected in Application Insights for a quick snapshot view

• Continuously Export data to Azure Blob Storage for custom integration with other data sources & further analysis

Page 37: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Powerful Insights w/ Metrics & Search Explorer

• Metric Explorer provides flexible multi-dimensional UI over custom and out-of-the-box telemetry collected

• Search Explorer enable efficient search over large set of data using the query experience.

Page 38: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Leading, real-time mobile crash analytics

• Near instant understanding of which crashes happening on devices, allowing users to quickly prioritize fixing key issues with the biggest impact

Page 39: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Any App Support• Easily add

analytics across multiple platforms including: ASP.NET, Java/J2EE, iOS, Android, Windows

• OSS technologies, such as Node.JS, PHP, Ruby, Python, etc.

Page 40: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

3rd Party Platform Support• Java SDK: allow

Java developers to easily add Application Insights to their app, using our downloadable SDK

• iOS & Android SDK: provide crash analytics based on HockeyApp

Page 41: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Visual Studio: Out-of-the-box collection of vital application telemetry data including .NET exceptions, ASP.NET request performance and logs instrumentation

• Azure Portal for Websites and VMs: Transparent integration provide access to application telemetry data with no effort

• Universal Applications: Usage and crash data across Windows 10, PC, tablet and mobile devices, which will be presented in the Windows Developer Center Portal

Zero click on Microsoft Platform

Page 42: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Monitor Apps without touching code• Status Monitor:

Diagnose exceptions & performance issues without rebuilding or re-deploying web apps.

• Install Status Monitor on IIS Server/Azure VM to track external dependencies & windows performance counters

Page 43: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Challenges– Visibility to application health?– Visibility to application outages to

minimize– customer impact?– Hard to get information to determine

impact of issue?

• Solutions– Reduce ‘Mean Time to Detect’– Ensure service availability with 16 global

points of presence– URL ping tests and rich multi-step web

tests– Threshold based alerts on metrics and

perf. counters– Real time alerts via email

Identify & Triage issues: Availability

Page 44: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Challenges– Uncover root cause of issues in

production?– Quickly resolve app crashes?– Monitor app responsiveness?

• Solutions– Reduce ‘Mean Time to Resolve’– Identify issues with request rate &

dependency response times– Multi-dimensional analyses over

custom & default metrics– Drill through exceptions & failed

requests with traces and runtime telemetry

Diagnose & Solve problems: Performance

Page 45: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

• Challenges– Unable to correlate with other data

sources?– Lack of information to prioritize future

investments?

• Solutions– Understand key adoption trends– Prioritize investments & support specific

client environments– Custom event instrumentation & client

page views– Complete usage with perf. telemetry for

360° view– Export data to manually correlate with

external data sources

Learn & Improve continuously: Usage

Page 46: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Application Insights SDK

Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 47: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Usando Application Insights SDK

Page 48: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

demoApplication Insights

SDK

Page 49: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Dicas de uso do SDKAPI Collected by Default? When to Use

Track Page View Yes with JavaScript SDK Want to differentiate with SPA

Track Request Yes with Server SDK

Track Event No Business/Feature usage logging

Track Trace No System logging, treat like your event log

Track Exception Yes but only at HTTP Module with Server SDK

Only exceptions you care about

Track Metric No Performance counters, business metrics

Page 50: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Exemplos de AdoçãoAprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 51: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

RoleGuidePowered by SMSG Readiness

Application Insights

Interesting Facts

• More than 95K Accounts & 220K Apps

• More than 11K apps actively using Application Insights

• More than 99% applications from outside Microsoft

• Key lifecycle piece of services like MS Game Studios, Visual Studio Online, MSDN, Office Apps, etc.

Page 52: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

“Titanfall delivers an unparalleled multiplayer gaming experience, powered using Azure”• Uses data centers all over• The game figures out where you are• Where the closest Azure data center is• Spins up a server just for you – constantly available set of

servers• AI & NPCs(non-player characters) powered by server• More than 100,000 virtual machines deployed on launch day

...so there is no host advantage in this multiplayer game

Launched on March 11, 2014

Application Insights

monitoring coming …

Page 53: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Trabalhando com dados exportados

Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 54: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Exportação Contínua

Page 55: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

“Meta-Application Insights”• Used daily for tracking adoption, prioritizing

investments and maintaining live site & data platform

• Pipeline is instrumented to track overall business metrics and feature/usage workflows

• Used for Live Site to track availability & performance in real time and fix issues quickly

• Tremendously useful for providing the service successfully

Page 56: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Exportação Contínua

Page 57: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Curiosidades• More than 95K Accounts & 220K

Apps• More than 11K apps actively using

Application Insights• More than 99% applications from

outside Microsoft• Key lifecycle piece of services like

MS Game Studios, Visual Studio Online, MSDN, Office Apps, etc.

Page 58: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

ConclusãoAprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 59: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Recapitulando...

Notificações e AlertasAnalytics e Log Mining

Monitoramento de Ambiente

Monitoramento da Aplicação

Monitoramento de Uso

App Analytics + App Perf Monitoring

Page 60: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Preço?

Page 61: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Para saber mais• Começe a usar o Application Insights – de graça!

http://www.visualstudio.com/en-us/get-started/find-performance-problems-vs

• Roller-coaster Tour of App Insights Webinarhttp://bit.ly/1c55LW8

• Find Performance Problemshttp://bit.ly/1fF5TXo

• Channel 9 App Insights for Visual Studio Online http://bit.ly/1fF69FR

Page 62: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Perguntas?Aprenda mais sobre sua aplicação e seus usuários com Application Insights

Page 63: DNAD 2015: Aprenda mais sobre sua aplicação e seus usuários com Application Insights

www.lambda3.com.br