Inspecionar dados de personalização com o BigQuery

A personalização de Remote Config registra um evento personalization_assignment de Analytics quando uma personalização é atribuída a um usuário, para que seja possível usar BigQuery para inspecionar e analisar eventos de personalização e eventos associados.

As seções a seguir descrevem como ativar as exportações de BigQuery para eventos de Analytics e como os eventos de personalização são armazenados, além de apresentar a você algumas consultas básicas.

Ativar a exportação de BigQuery para Google Analytics para Firebase

No plano Spark, você pode usar o sandbox de BigQuery para acessar BigQuery sem custos financeiros, sujeito aos limites do sandbox. Consulte Preços e sandbox do BigQuery para mais informações.

Primeiro, verifique se você está exportando os dados de Analytics para BigQuery:

  1. Abra a guia Integrações, que pode ser acessada usando > Configurações do projeto no console do Firebase.
  2. Se você já estiver usando BigQuery com outros serviços do Firebase, clique em Gerenciar. Caso contrário, clique em Vincular.
  3. Consulte Sobre a vinculação entre o Firebase e BigQuery e clique em Próxima.
  4. Na seção Configurar integração, ative o botão de alternância Google Analytics.
  5. Selecione uma região e escolha as configurações de exportação.

  6. Clique em Vincular a BigQuery.

Dependendo de como você escolheu exportar dados, a disponibilização das tabelas pode demorar até um dia. Para mais informações sobre como exportar dados do projeto para BigQuery, consulte Exportar dados do projeto para o BigQuery.

A seguir, acesse e inspecione eventos de personalização em BigQuery.

Acessar dados de personalização de Remote Config usando BigQuery

Para consultar dados de análise de um experimento:

  1. Abra BigQuery no console de Google Cloud. O programa também pode ser aberto diretamente em Eventos de Analytics usando o link Conferir eventos brutos em BigQuery na parte inferior da página.
  2. Selecione o projeto de Firebase e o expanda, faça o mesmo com a entrada analytics_ANALYTICS_PROPERTY_ID e clique em events_.

    Acessar eventos de personalização no console do Cloud

  3. No menu suspenso Consulta, selecione Em uma nova guia.

    É exibido um exemplo de consulta gerada de modo automático.

  4. Para ver eventos de personalização e os dados associados, atualize a consulta para selecionar eventos personalization_assignment. O exemplo de consulta a seguir vai retornar um evento de atribuição de personalização completo para um fragmento de data específico, limitando o número de resultados a 10:

    # Select all personalization_assignment events
    SELECT *
    FROM `PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10
    

    Dica: para pesquisar todas as tabelas de eventos, e não a fragmentada, substitua a data por um asterisco (por exemplo, PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_*). Isso não é recomendável para grandes conjuntos de dados ou cenários que não sejam de teste.

  5. No editor de consultas, selecione Executar consulta. Os resultados vão ser exibidos no painel inferior.

Na próxima seção, vamos nos aprofundar mais no que está incluído em um evento de atribuição de personalização.

Quais dados de personalização são exportados para BigQuery?

Os dados de personalização são incluídos nas tabelas Google Analytics em BigQuery e armazenados em eventos personalization_assignment.

Os campos básicos fornecidos em um evento de personalização são os mesmos que os de qualquer evento de Analytics, conforme descrito no esquema de exportação de BigQuery [GA4]. O maior foco de atenção deve ser user_pseudo_id, que pode ser usado para diferenciar usuários distintos, carimbos de data/hora de eventos e outras propriedades dos usuários.

Os detalhes específicos da personalização são armazenados no campo event_params e descritos na tabela a seguir:

Parâmetro Tipo de dado Descrição
personalization_id STRING Fornece o identificador universal exclusivo (UUID, na sigla em inglês) da personalização atribuída.
group STRING Indica se o usuário foi atribuído ao grupo de personalização (P13N) ou ao grupo de referência (REFERÊNCIA).
arm_index INTEGER Representa o valor alternativo atribuído ao usuário, um número inteiro entre 0 e 4.
arm_key STRING Contém o nome do parâmetro usado pela personalização.
arm_value STRING Contém a string de valor alternativa atribuída pela personalização.
engaged_session_event INTEGER Inclui o número de sessões com que o usuário está engajado. Consulte Sobre sessões para mais informações.
firebase_event_origin STRING Indica a origem do evento. Ele sempre vai ser fp para eventos personalization_assignment.
firebase_screen_class STRING Informa o nome da classe da tela que estava ativa para o usuário quando a atribuição de personalização ocorreu. Consulte Eventos coletados automaticamente para mais informações.
firebase_screen_id INTEGER Mostra o ID da tela que estava ativa para o usuário quando a atribuição de personalização ocorreu. Consulte Eventos coletados automaticamente para mais informações.
first_open_time STRING Mostra o carimbo de data/hora em UTC, medido em milissegundos, da primeira vez que o usuário abriu o app. Consulte Eventos coletados automaticamente para mais informações.
ga_session_id INTEGER Fornece o ID da sessão de Google Analytics. Consulte Sobre sessões para mais informações. Isso pode ser usado para correlacionar o evento personalization_assignment com outros eventos de Analytics.
ga_session_number INTEGER Fornece o número da sessão de Google Analytics. Consulte Sobre sessões para mais informações.

Exemplo de consultas

É possível usar uma instrução SQL como a seguinte para extrair os parâmetros específicos da personalização de eventos personalization_assignment:

    # Expand nested personalization parameters
    SELECT
     timestamp_micros(event_timestamp) AS event_time,
     user_pseudo_id,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'group'
     ) AS personalization_group,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'personalization_id'
     ) AS personalization_id,
     (
       SELECT event_params.value.string_value,
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_key'
     ) AS arm_key,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_value'
     ) AS arm_value,
     (
       SELECT event_params.value.int_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'ga_session_id'
     ) AS ga_session_id,
    FROM `PROJECT_NAME.analytics_ANALYTICS_ACCOUNT_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10