ALM Summit Brasil 2014 
ALM Summit Brasil 2014 
Monitorando suas Aplicações 
com Application Insights 
Carlos dos Santos 
CDS Informática Ltda. 
@cdssoftware 
www.carloscds.net 
Microsoft MVP C#
ALM Summit Brasil 2014 
Para refletir... 
• Sua aplicação está no ar 
neste momento ? 
• Está funcionando ? 
• Será que está com algum erro ? 
• E o desempenho ? 
A resposta é...
ALM Summit Brasil 2014 
Tudo mudou. Não acredita? 
Força de trabalho 
2.6bilhões 
de dispositivos móveis 
em 2016; 350M usados 
no trabalho 
Consumidores 
82% 
da população mundial 
online participa de redes 
sociais 
Comércio 
70% 
das empresas usam ou 
estão investindo em 
soluções de nuvem
ALM Summit Brasil 2014 
Em 2016 …
ALM Summit Brasil 2014 
Tudo está conectado… 
Usuários 
Clientes 
Browser 
Device 
Desktop 
Servidores 
Bancos de dados 
Serviços
ALM Summit Brasil 2014 
O mundo esta mais ágil… 
Práticas ágeis estão 
acelerando o processo 
de construção 
Problemas de 
disponibillidade e 
desempenho são 
difíceis de resolver 
nesse mundo de 
mudanças constants e 
apps distribuídas 
Um pipeline de publicação 
automática é necessário para 
entregar no ritmo do 
desenvolvimento, com total 
rastreabilidade 
O uso é que 
deveria determiner 
próximo conjunto 
de prioridades e 
aprendizado 
BACKLOG 
Desenvolvimento Produção 
Colaboração
ALM Summit Brasil 2014 
Um montão de coisas pode 
dar errado 
Bug na aplicação 
Respostas do servidor 
muito lentas 
Banco de dados 
sobrecarregado Serviço de terceiros 
fora do ar 
Funcionalidade difícil 
de usar
ALM Summit Brasil 2014 
Monitorar + 
Aprender 
Priorizar e validar 
investimentos baseados em 
dados qualitativos e 
quantitativos 
Detectar e resolver 
rapidamente os 
problemas em 
produção 
Impedimentos 
Planejar 
Diagnóstico em 
produção? Depois 
pensamos nisso… 
Desenvolver + 
BACKLOG 
Desenvolvimento Produção 
Colaboração 
Testar Publicar
ALM Summit Brasil 2014 
Tempo Médio para Detectar 
Problem 
Solution 
Value
ALM Summit Brasil 2014 
• Tenha uma visão 
de 360 graus da 
saúde da sua 
aplicação e 
detecte 
problemas em 
produção. 
Confgure as 
métricas de saúde 
Verifique o pulso 
da sua aplicação 
Identifique 
problemas com a 
aplicação em 
produção
ALM Summit Brasil 2014 
• Receba alertas 
automaticamente 
quando sua 
aplicação não 
estiver 
respondendo. 
Alertas 
automáticos com 
informações 
relevantes.
ALM Summit Brasil 2014 
Tempo Médio para Reparar 
Problem 
Solution 
Value
ALM Summit Brasil 2014 
• Identifique 
problemas que 
afetam a 
Infraestrutura de sua 
aplicação 
• Priorize novas 
funcionalidades, 
correção de bugs e 
estratégias baseadas 
em qualidade 
Dados valiosos na ponta 
dos seusc dedos 
Valorize seu investimento
ALM Summit Brasil 2014 
A solução: Application Insights 
Disponível 
Dashboards de Saúde Notificações e Insights Uso dos Dashboards 
Minha aplicação está disponível e com 
bom desmpenho para meus usuários ? 
Dashboard Único 
Performance Melhorando 
O quê está errado? 
Mostre-me os problemas de desempenho, 
Uso de memória e exceções 
Onde iremos investir? 
Mostre-me as principais funconalidades e 
Utilização dos usuários
ALM Summit Brasil 2014 
O que é o Application Insights 
• Novo serviço de 
monitoramento de 
aplicações do Microsoft 
Azure 
• Coleta indicadores de 
desempenho, logs e 
erros de aplicações em 
diversas plataformas 
• Server-side ou cliente-side 
• Devices 
• On-premise ou na 
nuvem
ALM Summit Brasil 2014 
Application Insights e o Azure 
• Até a versão 1.x o Application Insights é 
gerenciado pelo Visual Studio Online 
• A partir da versão 2.x ele estará no Microsoft 
Azure (Visual Studio 2013 Update 3)
ALM Summit Brasil 2014 
Dashboards
ALM Summit Brasil 2014 
Fontes de telemetria 
aplicação 
plataforma 
infraestrutura 
1 
2 Comportamento do usuário 
3 
4 
5 
6 
Monitoramento Outside-in 
Pings de URL e Testes Web a partir de vários 
pontos de presença globais 
Como a aplicação está sendo utilizada? 
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
ALM Summit Brasil 2014 
Como começar na sua aplicação ? 
Alterações no 
código 
Não invasivo
ALM Summit Brasil 2014 
demo 
Application Insights
ALM Summit Brasil 2014 
Plataformas suportadas 
Server side 
• .NET & Java 
• On-prem: MS 
Monitoring 
Agent 
• Azure: VM’s e 
cloud services 
• ASP.NET 
• AppInsights SDK 
Client side 
• Browser (JS) 
• Windows Phone 
• Windows Store 
Em breve 
• Azure Web Sites 
• iOS 
• Android
ALM Summit Brasil 2014 
Monitoramento de Uso 
Monitoramento de Ambiente 
Monitoramento da Aplicação 
Analytics e Log Mining 
Descoberta rápida com Alertas 
Recapitulando... 
BACKLOG 
Desenvolvimento Produção 
Colaboração
ALM Summit Brasil 2014 
Para saber mais… 
• Começe a usar o Application Insights – de graça! 
http://msdn.microsoft.com/en-us/library/dn481095.aspx 
• Find Performance Problems 
http://bit.ly/1fF5TXo 
• Channel 9 App Insights for Visual Studio Online 
http://bit.ly/1fF69FR 
• App Insights Azure Version 
http://azure.microsoft.com/en-us/documentation/articles/app-insights-get-started/
ALM Summit Brasil 2014 
ALM Summit Brasil 2014 
Obrigado! 
Carlos dos Santos 
CDS Informática Ltda. 
@cdssoftware 
www.carloscds.net 
Microsoft MVP C#

Application Insights

  • 1.
    ALM Summit Brasil2014 ALM Summit Brasil 2014 Monitorando suas Aplicações com Application Insights Carlos dos Santos CDS Informática Ltda. @cdssoftware www.carloscds.net Microsoft MVP C#
  • 2.
    ALM Summit Brasil2014 Para refletir... • Sua aplicação está no ar neste momento ? • Está funcionando ? • Será que está com algum erro ? • E o desempenho ? A resposta é...
  • 3.
    ALM Summit Brasil2014 Tudo mudou. Não acredita? Força de trabalho 2.6bilhões de dispositivos móveis em 2016; 350M usados no trabalho Consumidores 82% da população mundial online participa de redes sociais Comércio 70% das empresas usam ou estão investindo em soluções de nuvem
  • 4.
    ALM Summit Brasil2014 Em 2016 …
  • 5.
    ALM Summit Brasil2014 Tudo está conectado… Usuários Clientes Browser Device Desktop Servidores Bancos de dados Serviços
  • 6.
    ALM Summit Brasil2014 O mundo esta mais ágil… Práticas ágeis estão acelerando o processo de construção Problemas de disponibillidade e desempenho são difíceis de resolver nesse mundo de mudanças constants e apps distribuídas Um pipeline de publicação automática é necessário para entregar no ritmo do desenvolvimento, com total rastreabilidade O uso é que deveria determiner próximo conjunto de prioridades e aprendizado BACKLOG Desenvolvimento Produção Colaboração
  • 7.
    ALM Summit Brasil2014 Um montão de coisas pode dar errado Bug na aplicação Respostas do servidor muito lentas Banco de dados sobrecarregado Serviço de terceiros fora do ar Funcionalidade difícil de usar
  • 8.
    ALM Summit Brasil2014 Monitorar + Aprender Priorizar e validar investimentos baseados em dados qualitativos e quantitativos Detectar e resolver rapidamente os problemas em produção Impedimentos Planejar Diagnóstico em produção? Depois pensamos nisso… Desenvolver + BACKLOG Desenvolvimento Produção Colaboração Testar Publicar
  • 9.
    ALM Summit Brasil2014 Tempo Médio para Detectar Problem Solution Value
  • 10.
    ALM Summit Brasil2014 • Tenha uma visão de 360 graus da saúde da sua aplicação e detecte problemas em produção. Confgure as métricas de saúde Verifique o pulso da sua aplicação Identifique problemas com a aplicação em produção
  • 11.
    ALM Summit Brasil2014 • Receba alertas automaticamente quando sua aplicação não estiver respondendo. Alertas automáticos com informações relevantes.
  • 12.
    ALM Summit Brasil2014 Tempo Médio para Reparar Problem Solution Value
  • 13.
    ALM Summit Brasil2014 • Identifique problemas que afetam a Infraestrutura de sua aplicação • Priorize novas funcionalidades, correção de bugs e estratégias baseadas em qualidade Dados valiosos na ponta dos seusc dedos Valorize seu investimento
  • 14.
    ALM Summit Brasil2014 A solução: Application Insights Disponível Dashboards de Saúde Notificações e Insights Uso dos Dashboards Minha aplicação está disponível e com bom desmpenho para meus usuários ? Dashboard Único Performance Melhorando O quê está errado? Mostre-me os problemas de desempenho, Uso de memória e exceções Onde iremos investir? Mostre-me as principais funconalidades e Utilização dos usuários
  • 15.
    ALM Summit Brasil2014 O que é o Application Insights • Novo serviço de monitoramento de aplicações do Microsoft Azure • Coleta indicadores de desempenho, logs e erros de aplicações em diversas plataformas • Server-side ou cliente-side • Devices • On-premise ou na nuvem
  • 16.
    ALM Summit Brasil2014 Application Insights e o Azure • Até a versão 1.x o Application Insights é gerenciado pelo Visual Studio Online • A partir da versão 2.x ele estará no Microsoft Azure (Visual Studio 2013 Update 3)
  • 17.
    ALM Summit Brasil2014 Dashboards
  • 18.
    ALM Summit Brasil2014 Fontes de telemetria aplicação plataforma infraestrutura 1 2 Comportamento do usuário 3 4 5 6 Monitoramento Outside-in Pings de URL e Testes Web a partir de vários pontos de presença globais Como a aplicação está sendo utilizada? 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
  • 19.
    ALM Summit Brasil2014 Como começar na sua aplicação ? Alterações no código Não invasivo
  • 20.
    ALM Summit Brasil2014 demo Application Insights
  • 21.
    ALM Summit Brasil2014 Plataformas suportadas Server side • .NET & Java • On-prem: MS Monitoring Agent • Azure: VM’s e cloud services • ASP.NET • AppInsights SDK Client side • Browser (JS) • Windows Phone • Windows Store Em breve • Azure Web Sites • iOS • Android
  • 22.
    ALM Summit Brasil2014 Monitoramento de Uso Monitoramento de Ambiente Monitoramento da Aplicação Analytics e Log Mining Descoberta rápida com Alertas Recapitulando... BACKLOG Desenvolvimento Produção Colaboração
  • 23.
    ALM Summit Brasil2014 Para saber mais… • Começe a usar o Application Insights – de graça! http://msdn.microsoft.com/en-us/library/dn481095.aspx • Find Performance Problems http://bit.ly/1fF5TXo • Channel 9 App Insights for Visual Studio Online http://bit.ly/1fF69FR • App Insights Azure Version http://azure.microsoft.com/en-us/documentation/articles/app-insights-get-started/
  • 24.
    ALM Summit Brasil2014 ALM Summit Brasil 2014 Obrigado! Carlos dos Santos CDS Informática Ltda. @cdssoftware www.carloscds.net Microsoft MVP C#

Notas do Editor

  • #10 So let’s take each one of these impediments. First you want to minimize the time that it takes to detect any abnormalities or issues with your application, and have visibility to your application’s health. Having a 360 degree view to your application’s availability and performance, allows you to detect issues and events that could affect your application. And when issues occur, be automatically alerted and have relevant metric that allow you to resolve them Reduce the Mean Time To Detect the issue, and minimize outage time and impact to customers
  • #11 Application Insights provides out of box dashboards that help you detect issues in production before your customer experiences them. You can set up a custom view of your application’s health with metrics that are important for you and your business.
  • #12 You can get alerted automatically whenever your application is not responding to your specifications, enabling you to pro-actively resolve any issues and preventing customer impact.
  • #13 Problem - You try to ensure your application is constructed with high quality. But there are unforeseen conditions or usage patterns that can happen in production to impact your application’s availability. When this happens you need to be able to restore your application to a good state as soon as possible. You need to reduce the mean time to repair (MTTR). Solution - To detect the root cause of issues quickly, you need access production data as it was when the incident occurred. You need the ability to pull the exact code that was deployed and executing, and go to the suspicious line of code. Memory problems, while their occurrence is less common, are very difficult to diagnose - to the extent that having tools to view the full memory stack is a critical need in solving these problems as soon as possible, Value - Reducing MTTR, reduces customer impact and increasing team efficiency
  • #14 By having access to data from different data points in one dashboard, development teams can identify systemic issues and trends affecting applications and overall infrastructure health They can learn from usage data to make informed decisions based on qualitative and quantitative data
  • #15 Visual Studio Online Application Insights provides a 360 degree view of your applications, collecting rich operational, performance, and customer usage information from your applications, whether they run on-premises, in Azure, third-party cloud providers, or a mixture of all three. This empowers you to: Pro-actively monitor that your applications are available and Performing as expected, and when they aren’t, to provide information that helps you to resolve them promptly. Use information to continuously improve your applications and prioritize future investments.
  • #19 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.
  • #20 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