🧩For Creatives
Criando campos para um data view
Vamos lá pessoa!
Muitas vezes precisamos de um campo para representar uma informação extraída de outra, por exemplo, um expressão regular que retornar um verdadeiro ou false se determinada informação existir, uma computação para retornar um valor monetário ou número ou mesmo retornar um valor de uma URL.
Desafio
Neste post, o desafio será capturar uma informação de uma URL. Dado que temos o campo relative_view e que esse campo contém o caminho relativo de uma página acessada em seu site, queremos capturar a informação que agrupa essas páginas em categoria.
Lembre-se que é possível passar aos eventos do AgnosticData a variável event.content_category. Essa variável é automaticamente preenchida sempre que existir em sua página o meta atributo "agnostic_content_category", conforme o exemplo a seguir onde temos a categoria "Hidráulica".
Obs: Aprenda mais sobre personalização de meta-tags para capturas automáticas clicando aqui.
Dado que não vamos esperar a implementação da meta-tag em nossa página, podemos partir para um campo personalizado.
Passo 1: Acesso o painel discover no seu elasticsearch
Passo 2: Vamos adicionar um novo campo
Clique em "Add a field to this data view". Estamos utilizando o data view "events_all", no seu caso podem existir outros. Sinta-se livre para escolher o data-view apropriado.
Existem data views que são específicos de determinados eventos e os campos que o algoritmo necessita pode não existir, logo para evitar erros de campos runtime (ou campos em tempo de execução) é necessário colocar testes como no exemplo a seguir, por exemplo: containsKey e doc['YOUR_FIELD'].empty.
Passo 3: Implementar o código e contornar os erros (converse com o GPT)
A dica é usar o prompt do ChatGPT para gerer esse código.
Você pode consultar uma consulta como essas diretamente no ChatGPT. Basta usar o prompt:
"Tenho um campo chamado relative_view que contém links relativos, como /economia/brasil-registra-superavit-primario-positivo-pela-primeira-vez-desde-2013, onde economia é a categoria. Gostaria de criar um script de runtime no Elasticsearch que verifique se o campo relative_view existe e, se existir, extraia e retorne a categoria, que é a primeira parte do caminho após a barra inicial. Retorne apenas o código para copiar e colocar no input da interface, pois não foi usar o devtools."
Dado que recebemos a resposta do chatGPT temos algo como a imagem a seguir onde em source temos o script que iremos copiar.
Neste trecho, vamos selecionar tudo que está dentro de source, das aspas triplas (da imagem acima) e sem as aspas vamos colocar em "Set Value".
Ao final temos neste exemplo o campo category_content como um campo adicional ao data view que contém apenas o conteúdo desejado para classificar as urls em categorias, neste exemplo.
Note: ao verificar os dados percebemos que todas as urls de conteúdo são concebidas seguindo um mesmo padrão o que nos permitiu criar a instrução contemplada neste exemplo.
Passo 4: Gerar os insights com os gráficos.
Last updated