Análise de utilização com o Application Insights

Que funcionalidades da sua aplicação Web ou móvel são mais populares? Os seus utilizadores alcançam os seus objetivos com a sua aplicação? Desmentem em determinados pontos e regressam mais tarde? O Application Insights ajuda-o a obter informações avançadas sobre como as pessoas utilizam a sua aplicação. Sempre que atualizar a sua aplicação, pode avaliar como funciona bem para os utilizadores. Com este conhecimento, pode tomar decisões condicionadas por dados sobre os próximos ciclos de desenvolvimento.

Enviar telemetria a partir da sua aplicação

A melhor experiência é obtida ao instalar o Application Insights no código do servidor de aplicações e nas suas páginas Web. Os componentes do cliente e do servidor da sua aplicação enviam telemetria de volta para o portal do Azure para análise.

  1. Código do servidor: Instale o módulo adequado para a sua ASP.NET, Azure, Java,Node.jsou outra aplicação.

  2. Código da página Web: Utilize o JavaScript SDK para recolher dados de páginas Web. Veja Introdução ao SDK javaScript.

    Nota

    A 31 de março de 2025, o suporte da ingestão de chaves de instrumentação terminará. A ingestão de chaves de instrumentação continuará a funcionar, mas deixaremos de fornecer atualizações ou suporte para a funcionalidade. Transição para cadeias de ligação para tirar partido das novas capacidades.

    Para saber mais sobre configurações avançadas para monitorizar sites, veja o artigo de referência do SDK JavaScript.

  3. Código da aplicação móvel: Utilize o SDK do App Center para recolher eventos da sua aplicação. Em seguida, envie cópias destes eventos para o Application Insights para análise ao seguir este guia.

  4. Obter telemetria: Execute o projeto no modo de depuração durante alguns minutos. Em seguida, procure resultados no painel Descrição geral no Application Insights.

    Publique a sua aplicação para monitorizar o desempenho da sua aplicação e descobrir o que os seus utilizadores estão a fazer com a sua aplicação.

Explorar estatísticas e dados demográficos de utilização

Saiba quando as pessoas utilizam a sua aplicação e em que páginas estão mais interessadas. Também pode descobrir onde estão localizados os seus utilizadores e que browsers e sistemas operativos utilizam.

Os relatórios Utilizadores e Sessões filtram os seus dados por páginas ou eventos personalizados. Os relatórios segmentam os dados por propriedades como localização, ambiente e página. Também pode adicionar os seus próprios filtros.

Captura de ecrã a mostrar o separador Utilizadores com um gráfico de barras.

As informações à direita apontam padrões interessantes no conjunto de dados.

  • O relatório Utilizadores conta os números de utilizadores exclusivos que acedem às suas páginas nos períodos de tempo escolhidos. Para aplicações Web, os utilizadores são contabilizados através de cookies. Se alguém aceder ao seu site com diferentes browsers ou computadores cliente ou limpar os cookies, estes são contados mais do que uma vez.
  • O relatório Sessões tabula o número de sessões de utilizador que acedem ao seu site. Uma sessão representa um período de atividade iniciado por um utilizador e termina com um período de inatividade superior a meia hora.

Para obter mais informações sobre as ferramentas Utilizadores, Sessões e Eventos, veja Análise de utilizadores, sessões e eventos no Application Insights.

Retenção: quantos utilizadores voltam?

A retenção ajuda-o a compreender a frequência com que os seus utilizadores voltam a utilizar a aplicação, com base em coortes de utilizadores que realizaram alguma ação empresarial durante um determinado registo de tempo. Pode:

  • Compreenda que funcionalidades específicas fazem com que os utilizadores voltem mais do que outras.
  • Forme hipóteses com base em dados de utilizador reais.
  • Determine se a retenção é um problema no produto.

Captura de ecrã que mostra o livro Retenção, que apresenta informações sobre a frequência com que os utilizadores voltam a utilizar a aplicação.

Pode utilizar os controlos de retenção na parte superior para definir eventos e intervalos de tempo específicos para calcular a retenção. O gráfico no meio proporciona uma representação visual da percentagem de retenção geral pelo intervalo de tempo especificado. O gráfico na parte inferior representa a retenção individual num período de tempo específico. Este nível de detalhe permite-lhe compreender o que os seus utilizadores estão a fazer e o que pode afetar a devolução de utilizadores numa granularidade mais detalhada.

Para obter mais informações sobre o livro Retenção, veja Análise de retenção de utilizadores para aplicações Web com o Application Insights.

Eventos empresariais personalizados

Para compreender as interações do utilizador na sua aplicação, insira linhas de código para registar eventos personalizados. Estes eventos controlam várias ações do utilizador, como seleções de botões ou eventos empresariais importantes, como compras ou vitórias de jogos.

Também pode utilizar o plug-in Click Analytics Autocollection para recolher eventos personalizados.

Em alguns casos, as vistas de página podem representar eventos úteis, mas não é verdade em geral. Um utilizador pode abrir uma página de produto sem comprar o produto.

Com eventos empresariais específicos, pode traçar o progresso dos seus utilizadores através do seu site. Pode descobrir as suas preferências para diferentes opções e onde estas desativam ou têm dificuldades. Com este conhecimento, pode tomar decisões informadas sobre as prioridades no seu atraso de desenvolvimento.

Os eventos podem ser registados a partir do lado do cliente da aplicação:

      appInsights.trackEvent({name: "incrementCount"});

Ou os eventos podem ser registados a partir do lado do servidor:

    var tc = new Microsoft.ApplicationInsights.TelemetryClient();
    tc.TrackEvent("CreatedAccount", new Dictionary<string,string> {"AccountType":account.Type}, null);
    ...
    tc.TrackEvent("AddedItemToCart", new Dictionary<string,string> {"Item":item.Name}, null);
    ...
    tc.TrackEvent("CompletedPurchase");

Pode anexar valores de propriedade a estes eventos para que possa filtrar ou dividir os eventos quando os inspecionar no portal. Também é anexado um conjunto padrão de propriedades a cada evento, como o ID de utilizador anónimo, que lhe permite rastrear a sequência de atividades de um utilizador individual.

Saiba mais sobre as propriedades e eventos personalizados.

Eventos de segmentação e dados

Nas ferramentas Utilizadores, Sessões e Eventos, pode segmentar e dice eventos personalizados por utilizador, nome de evento e propriedades.

Captura de ecrã que mostra o separador Eventos filtrado por AnalyticsItemsOperation e dividido por AppID.

Sempre que estiver em qualquer experiência de utilização, selecione o ícone Abrir a última consulta de execução para o levar de volta à consulta subjacente.

Captura de ecrã do painel Sessão do Application Insights no portal do Azure. O ícone Abrir a última consulta de execução está realçado.

Em seguida, pode modificar a consulta subjacente para obter o tipo de informação que procura.

Eis um exemplo de uma consulta subjacente sobre vistas de página. Vá em frente e cole-o diretamente no editor de consultas para testá-lo.

// average pageView duration by name
let timeGrain=5m;
let dataset=pageViews
// additional filters can be applied here
| where timestamp > ago(1d)
| where client_Type == "Browser" ;
// calculate average pageView duration for all pageViews
dataset
| summarize avg(duration) by bin(timestamp, timeGrain)
| extend pageView='Overall'
// render result in a chart
| render timechart

Conceber a telemetria com a aplicação

Quando estruturar cada funcionalidade da sua aplicação, considere como irá medir o seu sucesso com os seus utilizadores. Decida que eventos empresariais precisa de registar e codize as chamadas de controlo para esses eventos na sua aplicação desde o início.

A | Teste B

Se não tiver a certeza de que variante de funcionalidade é mais bem-sucedida, liberte ambos e permita que diferentes utilizadores acedam a cada variante. Meça o sucesso de cada variante e, em seguida, mude para uma versão unificada.

Nesta técnica, vai anexar valores de propriedade exclusivos a toda a telemetria enviada por cada versão da sua aplicação. Pode fazê-lo ao definir propriedades no TelemetryContext ativo. Estas propriedades predefinidas são incluídas em todas as mensagens de telemetria enviadas pela aplicação. Inclui mensagens personalizadas e telemetria padrão.

No portal do Application Insights, filtre e divida os dados nos valores de propriedade para que possa comparar as diferentes versões.

Para efetuar este passo, configure um inicializador de telemetria:

    // Telemetry initializer class
    public class MyTelemetryInitializer : ITelemetryInitializer
    {
        // In this example, to differentiate versions, we use the value specified in the AssemblyInfo.cs
        // for ASP.NET apps, or in your project file (.csproj) for the ASP.NET Core apps. Make sure that
        // you set a different assembly version when you deploy your application for A/B testing.
        static readonly string _version = 
            System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
            
        public void Initialize(ITelemetry item)
        {
            item.Context.Component.Version = _version;
        }
    }

Para ASP.NET Core aplicações, adicione um novo inicializador de telemetria à coleção de serviços de Injeção de Dependência na Program.cs classe .

using Microsoft.ApplicationInsights.Extensibility;

builder.Services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();

Passos seguintes