Compartilhar via


Habilitar a telemetria para sinalizadores de recurso

A telemetria é o processo automatizado de coleta, transmissão e análise de dados sobre como seu aplicativo e seus recursos são usados. Habilitar a telemetria para sinalizadores de recursos oferece insights valiosos sobre o comportamento e o impacto das distribuições de recursos, ajudando as equipes a iterar mais rapidamente, aprimorar a experiência do usuário, detectar problemas antecipadamente e validar a eficácia dos novos recursos. Com a telemetria, as equipes podem responder perguntas críticas, como:

  • Um recurso está habilitado ou desabilitado conforme o esperado?
  • Usuários ou grupos específicos estão acessando o novo recurso?
  • Um recurso está causando regressões de desempenho ou erros?
  • Qual é o impacto de um recurso nas principais métricas, como participação ou conversão?

Aproveitando os dados de telemetria, as organizações podem tomar decisões informadas e controladas por dados, identificar e resolver problemas rapidamente e otimizar a entrega de recursos para melhores resultados de negócios e usuários.

A telemetria é o processo de coleta, transmissão e análise de dados sobre o uso e o desempenho do aplicativo. Ele ajuda a monitorar o comportamento do sinalizador de recursos e a tomar decisões controladas por dados. Quando uma alteração de sinalizador de recurso é implantada, geralmente é importante analisar seu efeito em um aplicativo. Por exemplo, aqui estão algumas perguntas que podem surgir:

  • Meus sinalizadores estão habilitados/desabilitados conforme o esperado?
  • Os usuários direcionados estão recebendo acesso a um determinado recurso conforme o esperado?
  • Como uma variante afeta o envolvimento do cliente?

Esses tipos de perguntas podem ser respondidas por meio da emissão e análise de eventos de avaliação do sinalizador de recurso.

Pré-requisitos

Conectar-se ao Application Insights

  1. Abra o repositório de Configuração de Aplicativos no portal do Azure.

  2. Na seção Telemetria , selecione a folha Application Insights (versão prévia ).

  3. Selecione a assinatura, grupo de recursos. Em seguida, selecione o recurso existente do Application Insights ao qual deseja se conectar ao repositório de Configuração de Aplicativos ou selecione Criar novo para criar um recurso do Application Insights.

  4. Selecione o botão Conectar.

    Captura de tela do portal do Azure, conectando insights do aplicativo.

Habilitar telemetria para um sinalizador de recurso

  1. Abra o repositório de Configuração de Aplicativos no portal do Azure e selecione a folha Gerenciador de Recursos na seção Operações .

  2. Selecione o sinalizador de recurso chamado Saudação. Se você não o tiver, siga as instruções para criá-lo. Em seguida, clique com o botão direito do mouse no sinalizador de recurso e selecione Editar.

    Captura de tela do portal do Azure, editando um sinalizador de recurso.

  3. Na nova exibição, selecione a guia Telemetria.

  4. Marque a caixa Habilitar Telemetria e, em seguida, selecione o botão Examinar + atualizar na parte inferior da página.

    Captura de tela do portal do Azure, habilitando a telemetria.

  5. Continue com as instruções a seguir para usar a telemetria em seu aplicativo para o idioma ou a plataforma que você está usando.

Examinar os resultados da telemetria na Configuração de Aplicativos do Azure

  1. Navegue até a folha Application Insights no portal de Configuração de Aplicativos. Você deverá ver um grafo exibindo todos os eventos do aplicativo. Este grafo fornece uma visão geral inicial dos padrões de atividade.

    Captura de tela do portal do Azure, exibindo eventos na folha application insights do recurso configuração de aplicativo.

  2. Use o seletor de intervalo de tempo para se concentrar em períodos específicos para identificar tendências ou investigar determinados períodos de interesse.

  3. Filtrar por sinalizador de recurso

    1. Clique no menu suspenso acima do gráfico de eventos
    2. Em Sinalizadores de recursos com eventos , selecione seu sinalizador de recurso
    3. O grafo agora exibirá apenas os eventos relacionados às avaliações do sinalizador de recurso

    Captura de tela do portal do Azure, selecionando o sinalizador de recurso específico na lâmina Application Insights do recurso App Configuration.

  4. Para acessar a telemetria mais detalhada, clique em Exibir detalhes para abrir a guia telemetria.

    Captura de tela do portal do Azure; navegue até a guia telemetria da folha insights do aplicativo do recurso Configuração de Aplicativos.

Observação

Você também pode acessar essa guia acessando o Gerenciador de Recursos e clicando em Exibir eventos na coluna de telemetria para o sinalizador de recurso de interesse. Captura de tela do portal do Azure, exibir eventos do gerenciador de recursos.

Verificar as atribuições de variante

Na guia telemetria, você pode exibir:

  • Total de eventos: número total de eventos de avaliação emitidos pelo aplicativo
  • Usuários exclusivos: número de usuários distintos que foram direcionados e para quem os eventos foram emitidos.

Para mostrar a distribuição de usuários e o número de avaliações entre variantes Simples, Longa e Nenhuma, agrupe as métricas por Variant. Esse agrupamento permite que você veja se as alocações configuradas estão funcionando conforme o esperado e que todas as variantes esperadas estão sendo atendidas aos usuários.

Captura de tela do portal do Azure, visualizar usuários únicos por variante na guia de telemetria.

Neste exemplo, vemos que o número de usuários atribuídos à variante "None" é quase o dobro das variantes "Simples" e "Long", considerando a divisão de percentil configurada de 50-25-25 entre "None", "Simple" e "Long", respectivamente.

Confirmar substituições e comportamento com base no estado do sinalizador

Os usuários podem receber uma variante por motivos diferentes. Você deseja garantir que suas atribuições variantes não estejam apenas na proporção certa, mas também pelo motivo certo. Você pode agrupar métricas por motivo de atribuição. Neste exemplo, vemos que o único motivo da atribuição é apenas devido a alocações de percentil.

Captura de tela do portal do Azure, mostrando o total de eventos por razão de atribuição na guia de telemetria.

  1. Desabilite o sinalizador de recurso acessando o gerenciador de recursos e alternando a opção "Habilitar" do sinalizador de recurso.

  2. Na coluna de telemetria, clique em Exibir eventos para ir para a guia telemetria no modo somente leitura.

  3. Exibir contagem de usuários únicos por Variante. Você deve ver que todas as atribuições de Long e Simple vão para zero. Somente a variante None, que é o padrão em nosso caso, é atribuída aos usuários.

    Captura de tela do portal do Azure, exiba a contagem de usuários exclusiva por variante na guia telemetria.

  4. Alterne para exibir a contagem de usuários exclusiva por motivo de atribuição. Confirme no grafo que as alocações de Percentil caem para zero e DefaultWhenDisabled é o único motivo pelo qual os usuários estão recebendo variantes.

    Outros motivos possíveis incluem "DefaultWhenEnabled", "Group" ou "User", se configurados.

    Captura de tela do portal do Azure, exibição da contagem exclusiva de usuários por motivo de atribuição na guia de telemetria.

Analisar a telemetria no Application Insights

Agora que você confirmou que as alocações do sinalizador de recurso estão funcionando conforme o esperado, você pode se aprofundar nos eventos de telemetria para ver como as diferentes variantes estão sendo executados com base nas curtidas emitidas para os usuários.

Abra o recurso do Application Insights no portal do Azure e selecione Logs em Monitoramento. Na janela de consulta, execute a seguinte consulta para ver os eventos de telemetria:

// Step 1: Get distinct users and their Variant from FeatureEvaluation (Replace <store-endpoint> with your store's endpoint)
let evaluated_users =
    customEvents
    | where name == "FeatureEvaluation"
    | where tostring(customDimensions.FeatureFlagReference) == "https://<store-endpoint>/kv/.appconfig.featureflag/Greeting"
    | extend TargetingId = tostring(customDimensions.TargetingId),
            Variant = tostring(customDimensions.Variant)
    | summarize Variant = any(Variant) by TargetingId;

// Step 2: Get distinct users who emitted a "Like"
let liked_users =
    customEvents
    | where name == "Liked"
    | extend TargetingId = tostring(customDimensions.TargetingId)
    | summarize by TargetingId;

// Step 3: Join them to get only the evaluated users who also liked
let hearted_users =
    evaluated_users
    | join kind=inner (liked_users) on TargetingId
    | summarize HeartedUsers = dcount(TargetingId) by Variant;

// Step 4: Total evaluated users per variant
let total_users =
    evaluated_users
    | summarize TotalUsers = dcount(TargetingId) by Variant;

// Step 5: Combine results
let combined_data =
    total_users
    | join kind=leftouter (hearted_users) on Variant
    | extend HeartedUsers = coalesce(HeartedUsers, 0)
    | extend PercentageHearted = strcat(round(HeartedUsers * 100.0 / TotalUsers, 1), "%")
    | project Variant, TotalUsers, HeartedUsers, PercentageHearted;

// Step 6: Add total row
let total_sum =
    combined_data
    | summarize Variant="All", TotalUsers = sum(TotalUsers), HeartedUsers = sum(HeartedUsers);

// Step 7: Output
combined_data
| union (total_sum)

Captura de tela do portal do Azure, veja os resultados da análise de insights do aplicativo.

Você verá um evento "FeatureEvaluation" para cada vez que a página de aspas foi carregada e um evento "Curtido" para cada vez que o botão curtir foi clicado. Os eventos "FeatureEvaluation" têm uma propriedade personalizada chamada FeatureName com o nome do sinalizador de recurso que foi avaliado. Ambos os eventos têm uma propriedade personalizada chamada TargetingId com o nome do usuário que gostou da citação.

Neste exemplo, podemos ver que, embora o número de usuários que receberam a variante Long vs Simple tenha sido praticamente o mesmo, a variante Simples parece estar tendo um desempenho melhor por uma margem de 22%.