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

Preview:

Citation preview

Application InsightsMONITORAMENTO 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 computingE 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

CustoMaiores informações podem ser encontradas em:

https://azure.microsoft.com/pt-br/pricing/details/application-insights/

Plataformas suportadas

Application Insights e .NETTecnologias suportadas:

◦ Web Forms◦ ASP.NET MVC◦ ASP.NET Web API◦ Windows Communication Foundation (WCF)◦ ASP.NET Core

Application Insights e .NETComo 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 RESThttp://bit.ly/application-insights-servicos-rest

◦ Application Insights e ASP.NET Corehttp://bit.ly/application-insights-aspnet-core

Obrigado!

Recommended