Capturar telemetria com o Application Insights
Este artigo discute como você pode capturar dados de telemetria do seu copiloto do Microsoft Copilot Studio para uso no Azure Application Insights.
Além dos recursos analíticos nativos no Microsoft Copilot Studio, você pode enviar dados de telemetria para o Application Insights. A telemetria oferece insights sobre seu copiloto rastreando:
- Mensagens e eventos registrados enviados do copiloto e para ele
- Tópicos a serem acionados durante as conversas com usuários
- Eventos de telemetria personalizados que podem ser enviados dos seus tópicos
Importante
O Application Insights é um recurso do Azure Monitor, uma ferramenta extensível de gerenciamento de desempenho de aplicativos (APM) que permite monitorar seus aplicativos ativos. Requer uma assinatura para o Microsoft Azure.
Conectar seu copiloto do Copilot Studio ao Application Insights
Para conectar seu copiloto Application Insights, primeiro você deve adicionar sua chave de instrumentação ao projeto.
Navegue até a página de Detalhes do copiloto em Configurações.
Alterne para a guia Avançado.
Na seção Application Insights, preencha a configuração Cadeia de conexão. Veja a documentação do Azure Monitor para descobrir como localizar sua cadeia de conexão.
Opcionalmente, você pode habilitar uma das seguintes configurações.
Atividades de log: Se habilitado, detalhes de mensagens e eventos recebidos/enviados são registrados.
Propriedades de atividade sensíveis ao log: se ativadas, os valores de determinadas propriedades que podem ser consideradas sensíveis em mensagens e eventos de entrada/saída são incluídos nos logs. As propriedades que são consideradas potencialmente confidenciais são userid, name, text e speak (as propriedades text e speak aplicam-se apenas a mensagens).
Analisar a telemetria do bot com o Application Insights
Após você conectar seu bot ao Application Insights, os dados de telemetria são registrados quando os usuários interagem com o bot, incluindo testes no Microsoft Copilot Studio. Para ver os dados de telemetria registrados, navegue até a seção Logs do seu recurso do Application Insights no Azure.
Aqui, você pode usar consultas do Kusto para consultar e analisar dados. Veja consultas de exemplo.
Consultas de exemplo
Uma consulta pode ser tão simples quanto especificar uma única tabela, como customEvents
, que mostra todos os eventos de telemetria personalizados registrados do Microsoft Copilot Studio. Mas você também pode usar consultas do Kusto para restringir ainda mais seus resultados, incluindo;
- Adicionar um intervalo de tempo
- Estender seus resultados usando dimensões personalizadas As dimensões personalizadas são propriedades personalizadas que são registradas junto com os campos predefinidos, como o carimbo de data/hora ou o nome do evento
- Uma cláusula where para limitar os dados retornados com base em uma condição
- Usar mais funções do Kusto internas para determinar quais e como as informações são mostradas
A consulta de exemplo abaixo resulta em um gráfico de linhas que mostra quantos usuários diferentes se comunicaram com seu bot por dia nos últimos 14 dias.
let queryStartDate = ago(14d);
let queryEndDate = now();
let groupByInterval = 1d;
customEvents
| where timestamp > queryStartDate
| where timestamp < queryEndDate
| summarize uc=dcount(user_Id) by bin(timestamp, groupByInterval)
| render timechart
Importante
Os dados dentro de alguns campos variam e são mais ou menos aplicáveis, dependendo do canal que está sendo usado. Por exemplo, você só obterá uma contagem correta de usuários únicos na consulta se eles forem usuários autenticados e as IDs de usuário forem consistentes nas conversas. Em cenários anônimos em que uma ID de usuário aleatória é gerada por conversa, o campo de ID de usuário é menos útil.
Excluir a telemetria de conversas de teste das suas consultas
Seu bot registra a telemetria de todas as conversas, incluindo aquelas que acontecem na tela de teste do Microsoft Copilot Studio. Se quiser excluir a telemetria coletada durante o teste, você poderá estender sua consulta com a dimensão personalizada designMode
que é capturada em todos os eventos e usar uma cláusula where na sua consulta.
O exemplo a seguir mostra todos os eventos personalizados, excluindo aqueles capturados por meio da tela de teste.
customEvents
| extend isDesignMode = customDimensions['designMode']
| where isDesignMode == "False"
Dimensões Personalizadas
Grande parte dos dados de atividades específicos recebidos do Microsoft Copilot Studio são armazenados no campo customDimensions
. Você pode ver um campo de dimensão personalizada sendo usado em uma consulta para excluir a telemetria das conversas de teste.
Campo | Descrição | Valores de exemplo |
---|---|---|
tipo | Tipo de atividade | message , conversationUpdate , event , invoke |
channelId | Identificador do canal | emulator , directline , msteams , webchat |
fromId | Identificador De | <id> |
fromName | Nome de usuário do cliente | John Bonham , Keith Moon , Steve Smith , Steve Gadd |
localidade | Localidade de origem do cliente | en-us , zh-cn , en-GB , de-de , zh-CN |
recipientId | Identificador do destinatário | <id> |
recipientName | Nome do destinatário | John Bonham , Keith Moon , Steve Smith , Steve Gadd |
texto | Texto na mensagem | find a coffee shop |
designMode | A conversa aconteceu dentro da tela de teste | True / False |