top of page

Incrementando Dados com Fontes Externas - Comando lookup

  • wevaluatebr
  • 23 de nov. de 2020
  • 2 min de leitura

Nossos logs nem sempre possuem todas as informações que precisamos para uma análise. Podemos também apenas ter conjuntos de id's em nos logs que não representam uma informação em si, mas que possuem uma fonte externa com sua "tradução".

Uma das formas para utilizar esse tipo de informação são os comandos de lookup no Splunk, o qual nos permite utilizar tabelas pré-definidas para incrementar os nossos dados a partir de um campo que compartilhe valores em comum com nosso índice.

Usando como exemplo os logs disponibilizados no site da Splunk, temos em nosso índice eventos relacionados a compras em uma loja virtual, mas não temos detalhamentos dos produtos tratados em cada transação. Vamos já prestar atenção no campo productId disponibilizado aqui no nosso índice:


Juntamente com esses dados de exemplo, a Splunk disponibiliza o arquivo prices.csv, o qual contém informações sobre preço, nome do produto, etc. Vamos ver abaixo como utilizar esses dados para enriquecer as informações do nosso índice.


O primeiro passo é acessar o menu lookup:


Agora vamos adicionar uma nova tabela na opção add new.


Aqui vamos selecionar o app de destino, o arquivo csv baixado junto aos logs de exemplo do Splunk. e por último informar o nome do arquivo que receberá o seu conteúdo no servidor do Splunk.


Agora já podemos visualizar o conteúdo do arquivo carregado no servidor com o comando inputlookup:

| inputlookup prices.csv

Caso queira sobrescrever o conteúdo do arquivo, basta utilizar o comando outputlookup. Cuidado com este comando, pois qualquer alteração que tenhamos executado em tela irá sobrescrever o arquivo no servidor. Recomendo testar com um novo arquivo com nome diferente:

| outputlookup novo_prices.csv

Perceba que o novo arquivo agora contém os resultados vindos do nosso arquivo de lookup anterior.

Como mencionado anteriormente, precisamos ter um valor em comum entre o índice e o arquivo carregado para identificar os valores relacionados entre eles. Lembra do campo productId? Sim, ele também está na nossa tabela de lookup, logo, para um evento relacionado a um productId podemos saber exatamente qual o valor daquele produto.


Agora, vamos ver como mesclamos essas informações. Novamente no menu lookup, vamos criar uma lookup definitiion, sendo necessário informar somente o nome do arquivo e qual o nome será utilizado para invocar a lookup durante a execução do comando.


E agora sim podemos usar o comando lookup para visualizar as informações:

index=web| lookup prices.csv productId as productId | table product_name, price, sale_price, Code

Usamos o comando table colocando primeiramente os campos que existem somente no índice, o campo productId e em seguida os campos que temos na nossa tabela de lookup para visualizar melhor os resultados.

Agora é possível realizar tratamentos nos dados normalmente usando os comandos que temos nos outros posts, como o comando stats e timechart.


Dúvidas sobre o post? Sugestões de conteúdo? Correções para o conteúdo? Críticas ou elogios?

Por favor, entre em contato conosco através do e-mail wevaluatebr@gmail.com e responderemos o mais rápido possível.


Se gostou, compartilhe este post em suas redes sociais e nos ajude a divulgar este trabalho!


 
 
 

Comentários


Post: Blog2_Post
bottom of page