Adicionar registos e monitorizar uma Função do Azure no portal
Agora que sua primeira função Web sem servidor usando o Azure Functions Maven Archetype foi implantada com êxito, sua empresa gostaria que você pesquisasse como analisar o uso do seu aplicativo com o Azure Application Insights.
Nesta unidade, você aprenderá sobre o streaming de logs como uma ferramenta básica de solução de problemas e a integração entre o Azure Functions e o Application Insights.
Transmita logs em tempo real com a CLI do Azure
Depois de ter seu aplicativo de função implantado e em execução. Você pode usar o seguinte comando da CLI do Azure para obter streaming de log em tempo real do aplicativo para solução de problemas básicos:
az webapp log tail -n <function app name> -g <resource group name>
O tráfego para seu aplicativo Function pode produzir um log de streaming como este exemplo:
Para cenários de solução de problemas e monitoramento mais complicados, o Application Insights é mais adequado.
O que é o Application Insights?
O Azure Application Insights é um serviço de Gerenciamento de Desempenho de Aplicativo (APM) incluído no Azure Monitor e está integrado ao Azure Functions. O Application Insights ajuda os desenvolvedores a visualizar e analisar dados em tempo real sobre seus aplicativos à medida que eles são usados pelos clientes. O Application Insights proporciona um conjunto de ferramentas abrangente que o podem ajudar a analisar e a dar resposta a problemas que podem estar a afetar a aplicação.
O Application Insights suporta aplicativos desenvolvidos em Node.js, Java ou .NET. Permite à sua equipa de desenvolvimento uma maior flexibilidade e escolha na forma como estruturam e constroem as aplicações da sua empresa.
O Application Insights fornece informações essenciais sobre solicitações com falha, tempo de resposta do servidor, solicitações do servidor e disponibilidade. O Application Insights está habilitado por padrão para suas Funções do Azure. Se você incluir pontos de controle de telemetria em seu código, o Application Insights também poderá usar dados de telemetria enviados do seu aplicativo.
Adicionar instrumentação ao projeto Java
Para obter o melhor do Application Insights, você precisa atualizar seu projeto de função. Há dois tipos de alterações que você precisa fazer:
O primeiro conjunto de alterações é a atualização da sua configuração para adicionar o Application Insights e o suporte de log:
Atualize o ficheiropom.xml do projeto para adicionar uma dependência da biblioteca do Application Insights.
Atualize o arquivo de host.json do seu projeto para adicionar parâmetros que definem como você deseja que o registro em log e o Application Insights funcionem para seu aplicativo.
O segundo conjunto de alterações são as modificações no código do aplicativo, o que oferece oportunidades para ajustar os relatórios do aplicativo:
Para implementar o rastreamento de eventos no Application Insight, você precisa adicionar um rastreador ao seu código.
Os controladores são adicionados em pontos críticos na execução do código; por exemplo: quando uma nova página é selecionada ou quando dados específicos são guardados na aplicação.
Compreender as opções de registo e de monitorização
O método recomendado para utilizar o Application Insights nas aplicações de função é otimizar os relatórios e a monitorização da aplicação. No entanto, também pode recolher dados sobre a operação das aplicações a partir dos registos incorporados que o Azure disponibiliza.
Por exemplo, o streaming de log está disponível selecionando Fluxo de log no menu Aplicativo de função. Em seguida, escolha Filesystem Logs ou App Insights Logs.