Application Insights
MONITORAMENTO DE APLICAÇÕES WEB
Renato Groffe
Mais de 15 anos de experiência na área de Tecnologia
Microsoft Most Valuable Professional
Microsoft Technical Audience Contributor (MTAC)
Articulista e Palestrante
Contatos
◦ Facebook: https://www.facebook.com/renatogroff
◦ Site: http://renatogroffe.net/
◦ Canal .NET: https://www.facebook.com/canaldotnet
◦ LinkedIn: http://br.linkedin.com/in/renatogroffe
◦ GitHub: https://github.com/renatogroffe
Agenda
◦ Monitoramento de aplicações
◦ Application Insights: uma visão geral
◦ Exemplos práticos
Monitoramento de aplicações
Por que monitorar?
◦ Garantir a operação do sistema
◦ Detecção de falhas
◦ Acompanhamento da performance
◦ Determinar uso intensivo de
funcionalidades
E como monitorar?
◦ Estipulando métricas para análise
◦ Implementando uma estratégia
de log
◦ Criando relatórios de
acompanhamento
Surgem as dificuldades..
◦ É costume relegar o
monitoramento a um segundo
plano
◦ Logs bem elaborados exigem
grandes esforços de codificação
E como superar isto?
Telemetria → coleta automatizada
de dados (métricas) para posterior
análise
Telemetria e cloud computing
E o que o Microsoft Azure nos oferece em
termos de telemetria?
Application Insights: uma visão geral
O que é?
◦ Serviço que integra o Microsoft Azure,
estando voltado ao monitoramento de
aplicações Web (sites e serviços)
◦ Uso de telemetria para coleta de dados
E o que é possível monitorar?
Algumas das métricas disponibilizadas:
◦ Quantidade de Falhas
◦ Número de usuários conectados
◦ Número de requisições
◦ Tempos de resposta
◦ Local de origem dos usuários
◦ Eventos customizados
◦ Browsers utilizados
Como funciona?
◦ Dados são coletados em uma aplicação e
enviadas para um repositório na nuvem
◦ Estes dados são agrupados na forma de métricas
◦ Dashboards no portal do Azure permitem a
análise das informações obtidas
Como funciona?
◦ Simples ajustes de configuração já
permitirão a coleta de várias
métricas
Alguns recursos
◦ Integração com Excel e Power BI
Alguns recursos
◦ Detecção proativa
◦ Detecção e geração de avisos sobre problemas de performance
◦ Uso de data mining + Machine Learning
Alguns recursos
◦ Monitoramento em tempo real (Beta)
Alguns recursos
◦ Regras de alerta
Alguns recursos
◦ Tracking de dependências → APIs e bases relacionais
Onde utilizar?
◦ Novas aplicações e projetos já existentes
◦ Soluções on-premise ou na nuvem
◦ Sites, Web Services e APIs REST
Requisitos para uso
◦ Uma conta de acesso ao Microsoft Azure
◦ Uma Instrumentation Key
◦ Um SDK disponibilizado pela própria
Microsoft
Custo
Custo
Maiores informações podem ser encontradas em:
https://azure.microsoft.com/pt-br/pricing/details/application-insights/
Plataformas suportadas
Application Insights e .NET
Tecnologias suportadas:
◦ Web Forms
◦ ASP.NET MVC
◦ ASP.NET Web API
◦ Windows Communication Foundation (WCF)
◦ ASP.NET Core
Application Insights e .NET
Como utilizar em uma aplicação .NET:
◦ Conta de acesso ao Microsoft Azure
◦ Utilização de uma chave
(Instrumentation Key)
◦ Adição de packages do Application
Insights SDK
◦ Em novas aplicações tudo isto pode ser
configurado na criação do projeto
Exemplos práticos
Exemplos práticos
◦Criando um novo projeto e utilizando o Application
Insights
◦Configurando um projeto já existente para utilizar o
Application Insights
Referências
◦ Application Insights: Guia de Sobrevivência
http://bit.ly/application-insights-guia-sobrevivencia
◦ Application Insights e serviços REST
http://bit.ly/application-insights-servicos-rest
◦ Application Insights e ASP.NET Core
http://bit.ly/application-insights-aspnet-core
Obrigado!

Application Insights - Campinas .NET - Março/2017

  • 1.
  • 2.
    Renato Groffe Mais de15 anos de experiência na área de Tecnologia Microsoft Most Valuable Professional Microsoft Technical Audience Contributor (MTAC) Articulista e Palestrante
  • 3.
    Contatos ◦ Facebook: https://www.facebook.com/renatogroff ◦Site: http://renatogroffe.net/ ◦ Canal .NET: https://www.facebook.com/canaldotnet ◦ LinkedIn: http://br.linkedin.com/in/renatogroffe ◦ GitHub: https://github.com/renatogroffe
  • 4.
    Agenda ◦ Monitoramento deaplicações ◦ Application Insights: uma visão geral ◦ Exemplos práticos
  • 5.
  • 6.
    Por que monitorar? ◦Garantir a operação do sistema ◦ Detecção de falhas ◦ Acompanhamento da performance ◦ Determinar uso intensivo de funcionalidades
  • 7.
    E como monitorar? ◦Estipulando métricas para análise ◦ Implementando uma estratégia de log ◦ Criando relatórios de acompanhamento
  • 8.
    Surgem as dificuldades.. ◦É costume relegar o monitoramento a um segundo plano ◦ Logs bem elaborados exigem grandes esforços de codificação
  • 9.
    E como superaristo? Telemetria → coleta automatizada de dados (métricas) para posterior análise
  • 10.
    Telemetria e cloudcomputing E o que o Microsoft Azure nos oferece em termos de telemetria?
  • 11.
  • 12.
    O que é? ◦Serviço que integra o Microsoft Azure, estando voltado ao monitoramento de aplicações Web (sites e serviços) ◦ Uso de telemetria para coleta de dados
  • 13.
    E o queé possível monitorar? Algumas das métricas disponibilizadas: ◦ Quantidade de Falhas ◦ Número de usuários conectados ◦ Número de requisições ◦ Tempos de resposta ◦ Local de origem dos usuários ◦ Eventos customizados ◦ Browsers utilizados
  • 14.
    Como funciona? ◦ Dadossão coletados em uma aplicação e enviadas para um repositório na nuvem ◦ Estes dados são agrupados na forma de métricas ◦ Dashboards no portal do Azure permitem a análise das informações obtidas
  • 15.
    Como funciona? ◦ Simplesajustes de configuração já permitirão a coleta de várias métricas
  • 16.
  • 17.
    Alguns recursos ◦ Detecçãoproativa ◦ Detecção e geração de avisos sobre problemas de performance ◦ Uso de data mining + Machine Learning
  • 18.
  • 19.
  • 20.
    Alguns recursos ◦ Trackingde dependências → APIs e bases relacionais
  • 21.
    Onde utilizar? ◦ Novasaplicações e projetos já existentes ◦ Soluções on-premise ou na nuvem ◦ Sites, Web Services e APIs REST
  • 22.
    Requisitos para uso ◦Uma conta de acesso ao Microsoft Azure ◦ Uma Instrumentation Key ◦ Um SDK disponibilizado pela própria Microsoft
  • 23.
  • 24.
    Custo Maiores informações podemser encontradas em: https://azure.microsoft.com/pt-br/pricing/details/application-insights/
  • 25.
  • 26.
    Application Insights e.NET Tecnologias suportadas: ◦ Web Forms ◦ ASP.NET MVC ◦ ASP.NET Web API ◦ Windows Communication Foundation (WCF) ◦ ASP.NET Core
  • 27.
    Application Insights e.NET Como utilizar em uma aplicação .NET: ◦ Conta de acesso ao Microsoft Azure ◦ Utilização de uma chave (Instrumentation Key) ◦ Adição de packages do Application Insights SDK ◦ Em novas aplicações tudo isto pode ser configurado na criação do projeto
  • 28.
  • 29.
    Exemplos práticos ◦Criando umnovo projeto e utilizando o Application Insights ◦Configurando um projeto já existente para utilizar o Application Insights
  • 30.
    Referências ◦ Application Insights:Guia de Sobrevivência http://bit.ly/application-insights-guia-sobrevivencia ◦ Application Insights e serviços REST http://bit.ly/application-insights-servicos-rest ◦ Application Insights e ASP.NET Core http://bit.ly/application-insights-aspnet-core
  • 31.