The document discusses Microsoft Application Insights, a service that allows developers to monitor applications and gain insights into usage and performance. It provides telemetry collection, dashboard views, and search capabilities. Application Insights supports applications built on various platforms and languages. It collects various types of telemetry including metrics, events, exceptions, and traces to help developers identify and resolve availability, performance, and usage issues.
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DNAD 2015)
1. Aprenda mais sobre sua aplicação e seus
usuários com Application Insights
DNAD 2015 –27/06/2015
Igor Abade V. Leite
@igorabade
2. Desde 2006
• Visual Studio Team System
• Visual Studio ALM
Sobre mim
@igorabade
www.tshooter.com.br
Desde 2010
• Consultoria
• Desenvolvimento
• Treinamento
Democracia Organizacional
18. • 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
19. • Customer Experience
Improvement Program
– “Service Quality
Monitoring” (SQM)
• Duas partes
– Application Analytics
– Application Performance
Monitoring
Já tinha reparado nisto?
21. 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
22. 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
25. 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
26. 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)3Telemetria é coletada em cada
camada: apps móveis,
servidores e browsers1
27. Fontes de telemetria
plataforma
infraestrutura
aplicação
1
3
4
5
6
Monitoramento Outside-in
Pings de URL e Testes Web a partir de 16
pontos de presença globais
Traces gerados pelo desenvolvedor
Qualquer coisa que o dev queira mandar para
o Application Insights
Comportamento da aplicação
Dispensa codificação – dependências de serviço,
consultas, tempo de resposta, exceções, logs, etc.
Desempenho da infraestrutura
Contadores de desempenho de sistema
“Meta-telemetria”
Código-fonte, builds, implantações, mudanças
de configuração
2 Comportamento do usuário
Como a aplicação está sendo utilizada?
28. Plataformas suportadas
Server 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
29. 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
30. 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
32. 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?”
33. 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.
34. • 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
35. 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
36. 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
37. 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.
38. 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
39. 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.
40. 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
41. • 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
42. 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
43. • 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
44. • 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
45. • 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
49. Dicas de uso do SDK
API 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
51. RoleGuide
Powered 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.
52. “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 …
55. “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
57. 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.
61. 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 Webinar
http://bit.ly/1c55LW8
• Find Performance Problems
http://bit.ly/1fF5TXo
• Channel 9 App Insights for Visual Studio Online
http://bit.ly/1fF69FR
There are a number of sources of telemetry data that App Insights can collect and process.
Outside-in monitoring is the same engine used by System Center’s Global Service Monitor. Developers don’t have to change any application code to enable this, but they can re-utilize the same web tests they create today for more complex user paths through an application.
By installing an agent, user behavior is captured without a change to code as well.
In some scenarios, code changes may be required to capture certain metrics and so SDK’s are available to emit and capture those.
Customers can start getting insights into their applications at their own pace…
Level 1 – Basic Availability – Non-invasive, no need to re-deploy or code changes.
Start getting outside-in monitoring with ping test/synthetic transactions, by configuring URL, ping or deploy existing web tests and get 16 global points of presence.
Level 2 – Basic Performance: No code changes required. Install agent (Microsoft Monitoring agent) on platform
Level 3 – Application usage: Inject agent into application - little or no developer effort
Level 4 – Customer telemetry – Using SDK, developer emits custom event to the service
So, who’s using this to monitor applications today. While there are customers using it, it’s in preview still, so we’ve listed these applications as those really using it for production.
The core is an instrumentation key
Belongs to a resource group – grouping for spending, access etc
Start with web
VS2013 U3 has it built-in
Add installs nuget and updates web.config
Also gives an AI config file
Applicationinsights.config
VS shows that events are being sent
Data immediately shows up in the portal
Any web (or javascript-enabled) app can send telemetry
Easy to access code from portal
Client side data
Currently the only way to monitor dependant resources (BLOB, HTTP, SQL)
Install and choose what web apps to activate, will update config and restart IIS.
Status Monitor adds monitoring of dependant resources, otherwise the same as
IIS is required
Outside-in web test
Add your test – locations and criteria
How can a 200-returning call keep failing?
ALL resources must succeed for test to pass
These limits will probably change soon
Some glitches around hot hours for online banking
Apps coming soon – but can still report telemetry to ASP.NET Application Insights-app with apps SDK.
Debug mode reports continously, release mode sends upon NEXT resume. (if online, otherwise next time)
Example of telemetry data
Some common concepts
Metrics is looking at lots of data at once (eg graphs)
Diagnostics is per event
Metrics explorer has filters
Alerts on metrics
Drilling down opens diagnostics search
Eg you can follow a session.
Custom telemetry is easy; events, exceptions and pageviews are most common.
You can send properties too.
Metrics are currently not shown in the Azure portal.
Custom events are also easily accessible in the portal.
Continuous export to storage container, nicely organized on type, json data.
Of course continuous export allows you to keep ALL data.