Guia Prático em Linguagem de Processamento de Buscas (LPB)
Explorando Splunk fornece uma introdução ao Splunk, combinadas com soluções para os problemas do mundo real.
3. Ressalva
Este livro foi feito somente como um texto ou livro de referências. O real uso do
software Splunk deve estar de acordo com sua licença de software e não com nada do
que está escrito neste livro. A documentação dada pelos produtos do software Splunk, e
não este livro, são a fonte de informação definitiva de como usar tais produtos.
Apesar de um grande cuidado ter sido tomado para garantir a precisão e atemporalidade
das informações neste livro, a Splunk não oferece nenhuma garantia da precisão ou
atemporalidade das informações e o Splunk não se responsabiliza quanto aos resultados
do uso das informações contidas neste livro. O leitor deve checar em docs.splunk.com
para as descrições definitivas das funções e conteúdos do Splunk.
4. Sumário
Prefácio.................................................................................. i
Sobre Este Livro......................................................................ii
O que está neste Livro? .........................................................iii
Convenções ...........................................................................iv
Avisos..................................................................................... v
PARTE I EXPLORANDO SPLUNK........................................ 1
1 A Historia do Splunk............................................................ 1
Splunk ao resgate do Data Center ........................................ 1
Splunk ao resgate do departamento de marketing................ 2
Se aproximando do Splunk.................................................... 2
Splunk: A companhia e o Conceito ....................................... 5
Como o Splunk aperfeiçoou os dados de maquina no data
Center.................................................................................... 6
Inteligência Operacional ........................................................ 7
Inteligência operacional no trabalho...................................... 8
2 Integrando os Dados ......................................................... 10
O básico dos dados de maquina .........................................10
Tipos de dados que o Splunk consegue ler ........................ 12
Fontes de dados do Splunk.................................................12
Baixando, Instalando e Iniciando o Splunk.......................... 12
Baixando o Splunk...............................................................13
Instalando o Splunk ............................................................. 13
Starting Splunk ....................................................................13
Trazendo os dados para serem Indexados......................... 14
Entendendo como o Splunk Indexa os dados..................... 15
3 Buscando com o Splunk.................................................... 17
A Dashboard de Busca........................................................ 19
SPL™: Linguagem de Processamento de Busca ............... 22
Pipes.................................................................................... 23
5. AND Implícito....................................................................... 23
top user................................................................................ 23
Campos – Porcentagem......................................................24
O comando de busca...........................................................24
Dicas para o uso do comando de busca ............................. 25
Subpesquisas ...................................................................... 26
4 SPL: Linguagem de Processamento de Busca.................. 27
Organizando Resultados ..................................................... 27
sort....................................................................................... 27
Filtrando Resultados............................................................ 29
where ................................................................................... 29
dedup................................................................................... 30
head..................................................................................... 32
Agrupando Resultados ........................................................ 33
transaction ........................................................................... 33
Reportando Resultados....................................................... 36
top........................................................................................ 36
stats ..................................................................................... 37
chart..................................................................................... 40
timechart.............................................................................. 41
Filtrando, Modificando e Adicionando Campos................... 43
fields .................................................................................... 43
replace.................................................................................44
eval ......................................................................................45
rex........................................................................................ 46
lookup ..................................................................................47
5 Enriquecendo seus dados ................................................. 50
Usando o Splunk para entender os dados .......................... 50
Identificando campos: Olhando entre as peças do quebra-
cabeça .................................................................................50
Explorando os dados para entender o escopo.................... 52
6. Preparando para reportagem e agregação ......................... 55
Visualizando os Dados ........................................................ 59
Criando Visualizações ......................................................... 60
Criando Dashboards............................................................ 61
Criando Alertas....................................................................63
Criando Alertas através do Instrutor....................................63
Afinando Alertas Usando o Gerenciador............................. 66
Customizando as Ações para um Alerta ............................. 68
O Gerenciador de Alertas.................................................... 69
PARTE II RECEITAS ........................................................... 70
6 Receitas para monitoramentos e alertas ........................... 70
Receitas de monitoramento.................................................70
Monitorando usuários concorrentes ....................................70
Monitorando hospedeiros inativos....................................... 71
Reportando dados categorizados........................................72
Comparando o principais valores com os do último mês....73
Encontrando medidas que caíram em 10% na última hora. 75
Tabelando os resultados de semana a semana..................76
Identificando oscilações em seus dados............................. 77
Compactando uma tabulação baseada em tempo.............. 79
Reportando em campos dentro do XML ou JSON.............. 79
Extraindo campos de um evento .........................................80
Receitas de Alerta ...............................................................81
Alertar por e-mail quando o servidor atinge uma carga
determinada.........................................................................81
Alertando quando a performance de um servidor está lenta
............................................................................................. 82
Desligar instancias de EC2 desnecessárias ....................... 82
Convertendo um monitoramento em um alerta................... 83
7 Agrupando Eventos........................................................... 85
Introdução............................................................................ 85
Receitas............................................................................... 86
7. Unificando os nomes dos campos....................................... 86
Encontrando Transações Incompletas................................ 87
Calculando o tempo dentro de transações.......................... 88
Encontrando os últimos eventos .........................................90
Encontrando eventos repetidos........................................... 90
Tempo entre transações......................................................92
Encontrando transações especificas................................... 94
Encontrando eventos perto de outros eventos.................... 97
Encontrando eventos depois de eventos ............................ 98
Agrupando grupos ...............................................................99
8 Tabelas de Lookup.......................................................... 102
Introdução.......................................................................... 102
lookup ................................................................................ 102
inputlookup ........................................................................ 102
outputlookup ...................................................................... 102
Leitura Posterior ................................................................ 102
Receitas............................................................................. 103
Colocando os Valores Padrões de Lookup ....................... 103
Usando Lookups reversos................................................. 103
Usando um lookup de duas camadas ............................... 104
Usando lookups de múltiplos passos ................................ 105
Criando uma tabela de lookup usando os resultados de uma
busca ................................................................................. 106
Anexando resultados a tabelas de lookup......................... 106
Usando tabelas gigantes de lookup .................................. 107
Comparando resultados com valores de lookup ............... 108
Controlando os encaixes da tabela de lookup................... 110
Encaixando IPs.................................................................. 111
Encaixando Coringas......................................................... 112
Apêndice A: Básico dos Dados de Maquina....................... 113
Logs de Aplicação ............................................................. 114
8. Logs de Acesso Web......................................................... 114
Logs de Proxy Web ........................................................... 114
Registros de Detalhes de Chamadas................................ 115
Dados de Clickstream........................................................ 115
Enfileiramento de Mensagem............................................ 115
Pacotes de Dados ............................................................. 116
Arquivos de Configuração ................................................. 116
Logs de Auditoria de Bancos de Dados e Tabelas ........... 116
Logs de Auditoria do Sistema de Arquivos........................ 116
Gerenciamento e APIs de Log .......................................... 116
Medidas de OS, Estado e Comandos de Diagnostico ...... 117
Fontes de Dados de Outras Maquinas.............................. 117
Apêndice B: Sensibilidade a Maiúsculas ............................ 118
Apêndice C: Comandos Comuns ....................................... 119
Apêndice D: Recursos mais usados................................... 121
Apêndice E: Guia de Referencia Rápida do Splunk............ 122
CONCEITOS ..................................................................... 122
COMANDOS COMUNS DE BUSCA ................................. 127
Otimizando Buscas............................................................ 128
EXEMPLOS DE BUSCA.................................................... 128
FUNÇÔES EVAL............................................................... 132
FUNÇÕES COMUNS DO STATS ..................................... 137
EXPRESSÕES REGULARES........................................... 138
FUNÇÕES COMUNS DO STRPTIME DO SPLUNK......... 139
9. i
Prefácio
A Empresa de Software Splunk (“Splunk”) é provavelmente a ferramenta mais
poderosa na assistência de busca e exploração de dados que você vai encontrar. Nós
escrevemos este livro para fornecer uma introdução ao Splunk e tudo o que ele pode
fazer. Este livro também seve como um ponto de partida de como ficar criativo com o
Splunk
O Splunk é geralmente usado por administradores de sistemas, administradores de redes
e gurus da segurança, mas o seu uso não é restrito a estas audiências. Existe um grande
valor de negócios escondido em dados corporativos que o Splunk pode liberar. Este
livro foi feito para alcançar alem do típico entusiasta de tecnologia para os grupos de
marketing e qualquer pessoa interessada em tópicos de Big Data e Inteligência
Operacional.
10. ii
Sobre Este Livro
O objetivo central deste livro é ajudar-lo a entender rapidamente o que o Splunk é e
como ele pode te ajudar. Ele cumpre isto lhe ensinando sobre as partes mais importantes
da Linguagem de Processamento de Busca do Splunk (SPL)™. O Splunk pode ajudar
tecnólogos e empresários de diversas formas. Não espere aprender sobre o Splunk de
uma vez. O Splunk não é como um canivete suíço, uma ferramenta simples que pode
fazer várias coisas incríveis.
Agora a questão é: Como este livro pode me ajudar? A resposta curta é que dando
rapidamente um senso de o que você pode fazer com o Splunk e aponte para onde você
pode aprender mais.
Mas já não existe um monte de documentação sobre o Splunk? Sim:
• Se você checar http://docs.splunk.com, você vai encontrar vários manuais com
explicações detalhada do maquinário do Splunk.
• Se você checar http://splunkbase.com, você vai encontrar uma base de dados
pesquisável com perguntas e respostas. Este tipo de conteúdo é valioso quanto você
sabe um pouco sobre o Splunk e está tentando resolver um problema comum.
Este livro cai entre estes dois níveis de documentação. Ele oferece um entendimento
básico das partes mais importantes do Splunk e combina isso com soluções para
problemas do mundo real.
11. iii
O que está neste Livro?
O capitulo 1 fala sobre o Splunk e como ele pode te ajudar.
O capitulo 2 discute como baixar o Splunk e os primeiros passos para usar-lo.
O capitulo 3 discute a interface de usuário para busca e como buscar usando o Splunk.
O capitulo 4 cobre as partes mais usadas da SPL.
O capitulo 5 explica como visualizar e enriquecer os seus dados com conhecimento.
O capitulo 6 cobre as soluções e monitoramento e alertas mais comuns.
O capitulo 7 cobre soluções para problemas que podem ser resolvidos através do
grupamento de eventos.
O capitulo 8 cobre muitas das formas que você pode usar as tabelas de lookup para
resolver problemas comuns.
Se você pensa que a Parte I (capítulos de 1 a 5) como um curso intensivo em Splunk, a
Parte II (capítulos de 6 a 8) mostra como você fazer manobras mais avançadas
combinando tudo isso, usando o Splunk para resolver alguns dos problemas mais
comuns e interessantes. Revisando estas receitas - e experimentando algumas - irá lhe
dar alguma idéia de como você usar o Splunk para responder a todos os mistérios do
universo (ou pelo menos do data center).
Os apêndices contornam o livro com algumas informações que podem ajudar. O
apêndice A dispõe um resumo do básico dos dados de maquina para abrir seus olhos
para as possibilidades e variedades de Big Datas. O apêndice B proporciona uma tabela
sobre o que é e não é sensível a letras maiúsculas nas buscas do Splunk. O apêndice C
proporciona uma olhada nas buscas mais comuns feitas com o Splunk (nós descobrimos
isto usando o Splunk, só pra avisar). O apêndice E aponta para algumas das maiores
fontes de aprendizagem relacionadas ao Splunk. O apêndice E é uma versão
especialmente projetada do cartão de referências do Splunk, que á o documento
educacional mais popular que nós temos.
12. iv
Convenções
Enquanto você for lendo este livro, você irá perceber que nós usamos varias fontes para
apontar certos elementos:
• Elementos da UI aparecem em negrito.
• Comandos e nomes de campo estão largura constante.
Se você for dito para selecionar a opção Y do menu X, ela estará escrita concisamente
como “selecione X » Y.”
13. v
Avisos
Este livro não seria possível se não fosse pela ajuda de inúmeras pessoas que
emprestaram seu tempo e talentos. Para revisões cuidadosas dos rascunhos do
manuscrito fazendo melhoramento valiosos, nós gostarias de agradecer especialmente
Ledion Bitincka, Gene Hartsell, Gerald Kanapathy, Vishal Patelm, Alex Raitz, Stephen
Sorkin, Sophy Ting e ao Steve Zhang, PhD; por me fornecer parte de seu tempo para
uma entrevista: Maverick Garner; pela ajuda adicional: Jessica Law, Tera Mendonca,
Rachel Perkins e Michael Wilde.
14. 1
PARTE I EXPLORANDO SPLUNK
1 A Historia do Splunk
O Splunk é uma poderosa plataforma para análise de dados de maquina, dados que as
maquinas emitem em grandes volumes mas que são raramente usados efetivamente. Os
dados de maquina já são importantes para o mundo da tecnologia e estão se tornando
cada vez mais importantes no mundo dos negócios. (Para aprender mais sobre dados de
maquina, veja o Apêndice A.)
A forma mais rápida de entender o poder e versatilidade do Splunk é considerar duas
situações: uma no data Center e outra no departamento de marketing.
Splunk ao resgate do Data Center
São 2 da manha na quarta. O telefone toca. Seu chefe está ligando; o site está fora do
ar. Por que ele falhou? Foi por culpa dos servidores, das aplicações dos servidores de
dados, algum disco cheio ou algum balanceador de carga que fritou? Ele está gritando
com você para que conserte isto agora. Está chovendo. Você está perdendo a cabeça.
Relaxa. Você instalou Splunk no dia anterior.
Você liga o Splunk. Em um único lugar, você pode procurar os arquivos de log de todos
os seus servidores web, bancos de dados, firewalls, roteadores e balanceadores de
carga, assim como buscar dentro de arquivos de configuração e dados de todos os
outros dispositivos, sistemas operacionais ou aplicativos de interesse. (Isto é verdade,
não importa em quantos Data Centers ou provedores de nuvem eles possam estar
espalhados.)
Você olha no gráfico de tráfego do servidor para ver quando o problema ocorreu. As
17:03, erros no servidor web tiveram um pico repentino. Você então olha para as 10
paginas com mais erros, a home page estava bem. A página de busca estava bem. A,
mas o carrinho de comprar é o problema. Começando as 17:03, cada pedido na pagina
estava produzindo um erro. Isto está custando dinheiro - impedindo vendas e afastando
clientes - e isto tem que ser corrigido. Você sabe que o carrinho de comprar conta com
um servidor de e-commerce conectado ao banco de dados. Uma olhada nos logs mostra
que o banco de dados está online. Bom.
Vamos checar os logs do servidor de e-commerce. As 17:03m o servidor de e-commerce
começa a dizer que ele não consegue se conectar ao servidor de banco de dados. Você
então busca por mudanças na configuração dos arquivos e vê que alguém mudou uma
das configurações de rede. Você olha mais de perto; ela foi feita incorretamente. Você
contata a pessoas que fez a mudanças, que faz o rollback, e o sistema começa a
funcionar novamente.
15. 2
Tudo isso pode levar menos de 5 minutos porque o Splunk já juntou todas as
informações relevantes em um índice central que você pode pesquisar rapidamente.
Splunk ao resgate do departamento de marketing
Você trabalha no departamento de promoções de um grande varejista. Você afina a
otimização e promoção do mecanismo de busca dos seus produtos para otimizar a
carga de trafego que vem dele. Na ultima semana, os caras do data Center instalaram
uma nova dashboard do Splunk que mostra (pelo ultima hora, dia e semana) todas os
termos de pesquisa usados para encontrar o site.
Olhando no gráfico pelas ultimas horas, você vê um pico de 20 minutos atrás. Buscas
pelo nome de sua companhia e o seu ultimo produto estão bem altos; Você chega o
relatório ao topo referenciando URLs na ultima hora e o Splunk mostra que uma
celebridade publicou um tweet sobre o produto e com o link para sua home page.
Você olha para outro gráfico que mostra a performance da maioria das páginas mais
frequentadas. A página de busca está sobre carregada e está ficando mais lenta. Uma
multidão de pessoas estão vindo ao seu site mas não podem achar chave do produto
que eles estão procurando, então eles estão todos usando a busca.
Você loga no sistema gerenciador de conteúdo do seu site e coloca uma propaganda
promocional para o novo produto ao centro da home page. Você então volta e olha as
paginas mais visitadas. O trafego de busca começa a diminuir, e o trafego na página do
novo produto começa a subir, da mesma forma, o trafego da página do carrinho de
compras. Você olha para a lista dos 10 produtos mais adicionados ao carrinho e os 10
produtos mais comprados; o novo produto se encontra no topo das listas. Você envia
um recado para do departamento de RP para acompanhar o processo. O trafego que
está chegando está sendo convertido em dinheiro ao invés de frustração, exatamente o
que você quer que aconteça. Sua habilidade de fazer o máximo com uma oportunidade
imprevista se tornou possível graças ao Splunk. Seu próximo passo é ter certeza de que
você tem o suficiente deste produto em estoque, pois isto é um problema grave.
Estes dois exemplos servem para mostrar como o Splunk pode providenciar uma janela
detalhada do que está acontecendo com o dados da sua maquina. O Splunk também
pode revelar padrões históricos, correlacionar múltiplas fontes de informação e ajudar
em milhares de outras forma.
Se aproximando do Splunk
Enquanto você usa o Splunk para responder certas questões, você vai descobrir que
você pode dividir a tarefa em três fases.
• Primeiro, identificar os dados que podem responder a sua questão.
• Segundo, transformar os dados em resultados que podem responder a sua questão.
16. 3
• Terceiro, mostrar a resposta em forma de um relatório, tabela interativa ou gráfico
para tornar-la legível para uma audiência mais ampla.
Comece com a questão que você quer responder: Por que este sistema falhou? Por que
ele está tão lento ultimamente? Aonde as pessoas estão tendo problemas com o nosso
site?
Enquanto você fica melhor com o Splunk, fica mais obvio que tipos de dados e
pesquisas ajudam a responder estas questões. Este livro vai acelerar o progresso da sua
perícia.
A questão então se torna: Os dados podem oferecer a resposta? Muitas vezes, quando
iniciamos uma análise, não sabemos o que os dados podem nos dizer. Mas o Splunk
também é uma poderosa ferramenta para a exploração e entendimento dos dados.
Você pode descobrir a maioria dos valores mais comuns ou mais estranhos. Você pode
sumarizar os dados com estatísticas ou agrupar eventos em transações, de forma que
todos os eventos que fazem parte de uma reserva online em um hotel através de
sistemas de registro. Você pode criar fluxos que começam com data set inteiro, então é
filtrado dos eventos irrelevantes, analisando que sobrou. Então, talvez, adicionar
algumas informações de uma fonte externa até então, depois em um número de passos
simples, você tem somente os dados necessário para responder a sua questão. A figura
1-1 mostra o processo básico de análise do Splunk.
18. 5
Splunk: A companhia e o Conceito
A verdadeira razão pela qual as pessoas estão excitadas com o Splunk é porque ele
ajuda a resolver problemas que os clientes sempre tiveram. A historia do Splunk
começou em 2002, quando os co fundadores Erik Swan e Rob Das começaram a
procurar pelo próximo desafio. Erik e Rob já haviam feito alguns projetos juntos e
estavam procurando por uma nova aventura, então eles começaram a falar sobre as
companhias e seus problemas.
Erik e Rob perguntaram a possíveis clientes “Como vocês resolvem os seus problemas
na sua infra estrutura?” continuamente, e ouviram sobre as experiências dos praticantes
tentando resolver os problemas de TI e recuperar os dados na forma tradicional. Os
dados estavam muito espalhados; eram difíceis de juntar e conseguir tirar algum sentido
de tudo aquilo. Todo mundo estava tentando resolver os problemas verificando
manualmente arquivos de log, algumas vezes escrevendo scripts para ajudar ao longo
do processo. Os scripts caseiros eram fracos e as pessoas que faziam eles geralmente
acabavam saindo das empresas depois de um tempo, levando com elas o conhecimento
de como eles funcionavam, e com cada nova tentativa de explorar o problema iria
acabar causando discussões, apontar culpados e a necessidade de refazer o script do
zero, com vários plantões do departamento de TI para suprir a emergência. Estes
praticantes disseram aos fundadores do Splunk que resolver problemas de infra
estrutura era como rastejar lentamente para fora de um buraco (seus datacenters) com
picaretas, iluminação ruim e navegação limitada (velhos scripts e tecnologia de
gerenciamento de logs). Resumindo, era como minerar uma caverna desconhecida, e
pensando na palavra Splunk (desbravador de cavernas) que eles escolheram dar o nome
do sistema de Splunk.
Entendendo a dificuldade da mineração digital, a única alternativa disponível para estas
pessoas era procurar na internet para ver se outras companhias tinham problemas
similares e haviam postado suas soluções online. Os fundadores estavam abismados que
as pessoas estavam gastando dinheiro nestes problemas de conhecimento comum, e
mesmo assim ninguém havia tentado construir uma solução. Erik e Rob perguntaram a
si mesmos, “Por que pesquisar dados de TI não pode ser tão fácil e intuitivo quanto uma
pesquisa no Google?™”
A primeira visão do Splunk estava direcionada em fazer um união e análise de dados
mais fácil de ser feita e resolver os problemas de um data Center ou grandes redes ou
ambientes computacionais. A missão do Splunk foi combinar a facilidade do uso das
pesquisas web com o poder dos trabalhosos métodos caseiros que os profissionais de
TI estavam usando para resolver os seus problemas.
Erik e Rob juntaram os fundos e a primeira versão do Splunk foi estreada na
LinuxWorld® 2005. O produto foi um grande sucesso e imediatamente virou um viral,
espalhado por sua disponibilidade como um download gratuito. Uma vez baixado, o
Splunk começou a resolver os problemas de uma diversa gama de problemas
impensados pelos clientes e acabou se espalhando de departamento em departamento e
de companhia em companhia. Quando usuários perguntaram a gerência para comprar
19. 6
ele, eles já poderiam apontar para uma lista de problemas que já haviam sido resolvidos
com o Splunk.
Originalmente pensado como uma forma de ajudar os gerentes de TI e datacenters a
resolver problemas técnicos, o Splunk cresceu para se tornar uma plataforma
extremamente útil para todos os tipos de empresas porque ele permite que eles
pesquisem, coletem e organizem os dados de uma forma bem mais fácil de
compreender e seja uma forma que consuma menos recursos que os bancos de dados
tradicionais. O resultado é que temos novos pontos de vista e inteligência operacional
que as organizações nunca tiveram antes.
Como o Splunk aperfeiçoou os dados de maquina no data
Center
O primeiro lugar que o Splunk tomou, naturalmente, foi o data Center, que está
submerso em dados de maquina. O Splunk se tornou popular com administradores de
sistema, engenheiros de rede e desenvolvedores de aplicações como um mecanismo
para rapidamente entender (e aumentar a utilidade dos) dados de maquina. Mas por que
eles gostam tanto dele? Um exemplo que ajuda não somente a explicar a popularidade
precoce do Splunk mas também ajuda-nos a entender a natureza dos dados de maquina,
que é central para o valor que o Splunk agrega ao mundo dos negócios.
Na maioria dos ambientes computacionais, muitos sistemas diferentes dependem um do
outro. Sistemas de monitoramento enviam alertas depois de que algo deu errado.
Por exemplo, a página principal de um site pode depender de servidores web, servidores
de aplicação, servidores de dados, sistemas de arquivos, balanceadores de cargas,
roteadores, aceleradores de aplicação, sistema de cache, etc. Quando algo da errado em
algum destes sistemas, por exemplo o banco de dados, alarmes podem começar a apitar
em todos o níveis. Quando isto acontece, um administrador de sistema ou especialista
de aplicação deve encontrar a raiz do problema e consertar o que está causando ele. O
problema é que os arquivos de log estão espalhados através de múltiplas maquinas, as
vezes em múltiplas zonas de tempo e podem conter milhões de entradas que não tem
nada a ver com o problema. Em adição, os registros relevantes - aqueles que indicam
alguma falha do sistema - tendem a aparecer todos de uma vez. O desvio então é
encontrar o problema que começou tudo isso. Vamos dar uma olhada em como o
Splunk faz isso.
• O Splunk começa indexando, que significa juntar todos os dados de diversos locais e
combinar eles em índices centralizados. Antes do Splunk, administradores de sistema
teriam de criar um acesso a várias maquinas diferentes para alcançar toda a informação,
ainda usando ferramentas muito menos poderosas.
• Usando os índices, o Splunk pode rapidamente procurar logs de todos os servidores e
vasculhar por dentro onde o problema ocorreu. Com a sua velocidade, escala e
usabilidade, o Splunk faz a determinação de quando o problema ocorreu muito mais
rápida.
20. 7
• O Splunk pode se aprofundar no tempo em que o problema originalmente ocorreu e
determinar a causa. Alertas podem ser criados para lidar com o problema no futuro.
Através da indexação e agregação de arquivos de log de várias fontes para fazer elas
pesquisáveis de forma centralizada, o Splunk se tornou popular entre os administradores
de sistema e outras pessoas que comandam operações técnicas para empresas ao redor
do mundo. Analistas de segurança usam o Splunk para farejar vulnerabilidades de
segurança e ataques. Analistas de sistemas usam o splunk para descobrir ineficiências e
gargalos em aplicações complexas. Analistas de rede usam o Splunk para encontrar as
causas de deficiências de rede e gargalos de bandwidth.
Esta discussão traz vários pontos chave sobre o Splunk:
• A criação de um repositório central é vital: Uma das maiores vitórias do Splunk é a
forma que diversos tipos de dados de diferente fontes são centralizados para a pesquisa.
• O Splunk converte dados em respostas: O Splunk te ajuda a encontrar os aspectos
escondidos nos dados.
• O Splunk ajuda a entender a estrutura e o significado dos dados: Quanto mais
você entender seus dados, mais você vai ter aproveitamento deles. O Splunk também
ajuda você a capturar o que você aprende e fazer futuras investigações mais fáceis e a
compartilhar o que você aprendeu com o outros.
• A visualização fecha o loop: Toda essa indexação e pesquisa dão frutos
eventualmente quando você vê uma tabela ou relatório que faz a respostas simples e
obvia. Ser capaz de visualizar dados de formas diferentes acelera o entendimento e
ajuda a compartilhar o seu entendimento com os outros.
Inteligência Operacional
Porque quase tudo que a gente faz é suportado de alguma forma por tecnologia, a
informação coletada sobre cada um de nós cresceu drasticamente. Muitos dos eventos
recordados pelos servidores na verdade representam o comportamento de clientes ou
parceiros. Os clientes do Splunk perceberam bem cedo que os logs de acesso web
poderiam ser usados não somente para diagnósticos de sistema mas também para
melhor entender o comportamento das pessoas navegando um site.
O Splunk tem sido a vanguarda em levantar a atenção sobre a inteligência operacional,
uma nova categoria de métodos e tecnologias para o uso de dados de maquina para
ganhar visibilidade dentro dos negócios de TI e o resto da empresa. A inteligência
operacional não é um subproduto da inteligência de negócios (BI), mas uma nova
aproximação baseada em fontes de informação não tipicamente dentro do escopo das
soluções de BI. Os dados operacionais não são somente inacreditavelmente valiosos
para o melhoramento das operações de TI, mas também fornece idéias para outras
partes dos negócios.
21. 8
A inteligência operacional permite que organizações:
• Usando dados de maquina para ganhar um entendimento mais profundo dos seus
clientes: Por exemplo, se você observar as transações em um site, você o que as pessoas
compraram. Mas olhando com atenção nos logs servidor web você pode ver todas as
paginas que eles passaram antes de comprar, e, talvez elas sejam ainda mais importantes
para os lucros, as paginas que as pessoas que não compraram passaram. (Lembram-se
de nosso exemplo de busca para um novo produto no começo?)
• Revelar padrões importantes e dados analíticos derivados da correlação de várias
fontes: Quando você pode rastrear os indicadores do comportamento de um consumidor
de sites, chamar por detalhes dos registros, mídia social e informações de transações
armazenadas, uma imagem bem mais completa do consumidor começa a surgir. E
quanto mais e mais a interação com o cliente aparece nos dados de maquina, mais pode
ser aprendido.
• Reduzir o tempo entre um evento importante e a sua detecção:
Dados de maquina podem ser monitorados e co relatados em tempo real.
• Alavanque os feeds ao vivo e os dados históricos para fazer que está acontecendo
agora fazer sentido, encontrar tendências e anomalias e tomar uma decisão mais
informada baseada nesta informação: Por exemplo, o trafego criado pro uma
promoção na internet pode ser medido em tempo real e comparado com promoções
anteriores.
• Implementar uma solução rapidamente e entregar ela com a flexibilidade
necessária para as organizações de hoje em dia e no futuro - quer dizer, a
habilidade de entregar relatórios ad hoc, responder perguntas e adicionar novas
fontes de dados: Os dados do Splunk podem ser apresentados em dashboards
tradicionais que permitem aos usuários que eles explorem os eventos que continuem
fazendo novas questões.
Inteligência operacional no trabalho
O Splunk faz algo que nenhum outro produto pode: capturar de forma eficiente e
analisar enormes quantidade de dados de maquina não estruturados em series de tempo.
Apesar dos departamentos de TI geralmente começarem usando o Splunk para resolver
problemas tecnicamente esotéricos, eles rapidamente ganharão um entendimento
valioso para todos os outros setores dos negócio.
Usando dados de maquina no Splunk ajuda a resolver problemas irritantes de trabalho.
Aqui estão alguns exemplos:
• Um time de operações implementou uma aplicação de atendimento ao cliente através
da nuvem e usou o Splunk para fazer o diagnóstico. Eles logo perceberam que eles
22. 9
poderiam acompanhar as estatísticas dos usuários e planejar melhor a capacidade - uma
medida com profundas implicações nos negócios.
• Logs de trafego de um servidor web podem ser usados para acompanhar quantos
carrinhos de compra estão sendo preenchidos e abandonados em tempo real. O
departamento de marketing pode usar esta informação para determinar aonde os
consumidores estão tendo problemas e que tipos de compras estão sendo abandonadas
para que qualquer problema possa ser corrigido na hora e promoções possam se focar
em itens que estão sendo abandonados.
• Organizações usando o Splunk para monitorar aplicações direcionadas a resolução de
problemas acabaram percebendo que elas podem facilmente providenciar visões para os
seus times de suporte de primeira linha para cuidas das chamadas dos clientes
diretamente, ao invés de acumular estas ligações em custosos recursos de engenharia.
• Uma das principais companhias de utilidades foi capaz de eliminar as custosas taxas
manutenção de software substituindo seis outras ferramentas de monitoramento e
diagnóstico pelo Splunk.
• Uma das principais organizações de mídia publica reduziu o tempo que levava para
capturar dados analíticos de extrema importância de meses para horas. Eles eram
também capazes de acompanhar o seus componentes digitais com confiabilidade e
precisão que eles não teriam de outra forma, resultando em uma melhor divisão de
lucros e marketing de conteúdo.
• Um restaurante fast-food que vende taco conectou seus pontos de vendas (POS) ao
Splunk, e dentro de uma hora, os analistas de negócios foram capazes de começar a
responder perguntas como “Quantas pessoas estão comprando tacos da meia noite as
duas da manha, neste local, nesta época do ano?”
Finalmente, a inteligência operacional permite as organizações que elas façam as
perguntas certa, levando a respostas que podem oferecer um entendimento melhor de
negócio, usando combinações de tempo real e dados históricos, mostrados de forma
fácil de digerir em dashboards e ferramentas gráficas.
Existe um motivo de por que temos a tendência de chamar dados de maquina de “big
data”. Ela é grande, é bagunçada e está lá, enterrada em algum lugar, ela é a chave para
o futuro do seu negócio. Agora vamos em frente para o capítulo 2, onde você irá
aprender como conseguir os dados no Splunk e começar a encontrar o ouro enterrado
em meio aos seus dados.
23. 10
2 Integrando os Dados
O capitulo 1 ofereceu uma introdução ao Splunk e descreveu como ele pode te ajudar.
Agora vamos tomar o próximo passo em sua jornada: entrando os dados no Splunk.
Este capítulo cobre a instalação do Splunk, a importação dos dados e um pouco sobre
como os dados estão organizados para facilitar a busca.
O básico dos dados de maquina
A missão do Splunk é fazer com que os dados de maquina sejam úteis para as pessoas.
Para te dar um pouco de contexto, vale a pane resumir alguns dos aspectos básicos
sobre dados de maquina e como o Splunk percebe eles.
A pessoa que cria sistemas (como servidores web ou balance adores de carga ou vídeo
games ou plataformas de mídia social) também especifica a informação que estes
sistemas geram em arquivos logs quando estão rodando. Esta informação (os dados de
maquina em seus arquivos de log) é o que as pessoas que estão usando os sistemas
podem usar para entender o que estes sistemas estão fazendo enquanto rodam (ou
falham). Por exemplo, o arquivo de log que sai de uma aplicação de relógio hipotética
pode parecer com isso:
Action: ticked s:57, m:05, h:10, d:23, mo:03, y:2011
Action: ticked s:58, m:05, h:10, d:23, mo:03, y:2011
Action: ticked s:59, m:05, h:10, d:23, mo:03, y:2011
Action: ticked s:00, m:06, h:10, d:23, mo:03, y:2011
Toda vez que o relógio conta, ele cria um log para a ação e o tempo que ela ocorreu. Se
você estivesse realmente acompanhando o relógio, em adição do fato de que ele contou,
o log também pode incluir outras informações úteis: O nível de bateria, quando o
alarma está marcado para tocar, se ele está ligado ou não ou se tocou alguma vez - tudo
que poderia te dar uma noção de como o relógio está funcionando. Cada linha do dado
de maquina mostrado acima pode ser considerado um evento separado, mesmo que seja
comum para outros dados de maquina terem eventos que se espalhem por múltiplas, até
centenas de linhas.
O Splunk divide dado de maquina cru em discretas peças de informação conhecidas
como eventos. Quando você faz uma simples busca, o Splunk recolhe os eventos que
se encaixam nos termos da busca. Cada evento consiste de uma ou mais peças
discretas de dados conhecidas como campos (fields). Nos dados do relógio, os campos
podem incluir segundo, minuto, hora, dia, mês e ano. Se você pensar em grupos de
eventos organizados em um banco de dados ou tabelas, os eventos são as linhas e o
campos são as colunas, assim como a figura 2-1 mostra.
24. Figura 2-1. Eventos do relógio em forma de tabela.
Na prática, outra forma de pensar nos eventos
grupos de campos com pares de chave/valor. Se representados como pares de
chave/valor, os eventos do relógio parecem com a figura 2
Figura 2-2. Eventos do relógio como campos de pares chave/valor.
Aqui está um outro exemplo do mundo real, um dos mais comuns e úteis tipos de dados
de maquina. Um servidor web tem um log que grava cada página URL que foi
requisitada ao servidor.
Alguns dos campos em um servidor web são:
IP do cliente, estampa de tempo,
usuário
Uma visito a uma página pode invocar dúzias de pedidos de envio de texto, imagens e
outros recursos. Cada pedido é tipicamente logado como um evento separado em um
arquivo de log. O resulta é um arquivo que
convenientes campos destacados para ajudar na visão deles).
Figure 2-3. Típico log de um servidor web.
1. Eventos do relógio em forma de tabela.
Na prática, outra forma de pensar nos eventos é como se tivessem sido organizados em
grupos de campos com pares de chave/valor. Se representados como pares de
chave/valor, os eventos do relógio parecem com a figura 2-2.
2. Eventos do relógio como campos de pares chave/valor.
outro exemplo do mundo real, um dos mais comuns e úteis tipos de dados
de maquina. Um servidor web tem um log que grava cada página URL que foi
Alguns dos campos em um servidor web são:
IP do cliente, estampa de tempo, método de HTTP, estado, bytes, referente, agente de
Uma visito a uma página pode invocar dúzias de pedidos de envio de texto, imagens e
outros recursos. Cada pedido é tipicamente logado como um evento separado em um
arquivo de log. O resulta é um arquivo que parece com a figura 2-
convenientes campos destacados para ajudar na visão deles).
3. Típico log de um servidor web.
11
é como se tivessem sido organizados em
grupos de campos com pares de chave/valor. Se representados como pares de
outro exemplo do mundo real, um dos mais comuns e úteis tipos de dados
de maquina. Um servidor web tem um log que grava cada página URL que foi
, estado, bytes, referente, agente de
Uma visito a uma página pode invocar dúzias de pedidos de envio de texto, imagens e
outros recursos. Cada pedido é tipicamente logado como um evento separado em um
-3 (sem os
25. 12
Tipos de dados que o Splunk consegue ler
Uma das características comuns dos dados de maquina é que quase sempre ele contem
alguma indicação de quando o dados foi criado ou quando o evento criado pelo dado
ocorreu. Tendo em conta esta característica, os índices do Splunk são otimizados para
recuperar eventos em ordem de uma série de tempo. Se os dados puros não possuem
uma estampa de tempo explicita, o Splunk da a ela o tempo em que o dado foi indexado
por ele para os eventos nos dados ou usa outras aproximações, como o tempo em que o
arquivo foi modificado pela ultima vez ou a estampa de tempo de um evento anterior.
O único outro requerimento é que este dado de maquina tem que ser textual, e não
binário. Arquivos de som e imagem são exemplos comuns de dados binários. Alguns
tipos de dados binários, como o despejo de núcleo produzido quando um programa
trava, podem ser convertidos em informação textual, como um stack trace. O Splunk
pode invocar os seus scripts para fazer esta conversão antes de indexar os dados.
Finalmente, apesar disso, os dados do Splunk tem que ter uma representação textual
para ser indexado e procurado.
Fontes de dados do Splunk
Durante a indexação, o Splunk pode ler os dados de maquina de qualquer número de
fonte. O tipos mais comuns de fontes de entrada são:
• Arquivos: O Splunk pode monitorar arquivos e diretórios específicos. Se dados são
adicionados ao arquivo ou arquivos ao diretório monitorado, o Splunk é capaz de ler os
dados.
• A rede: O Splunk pode escutar as portas TCP e UDP, lendo quaisquer dados
enviados.
• Entrada scriptadas: O Splunk pode ler os dados de maquina que saem de programas
ou scripts, como um comando Unix® ou um script customizado que monitora sensores.
Já basta de explicações: vamos começar a trabalhar com o Splunk.
Baixando, Instalando e Iniciando o Splunk
Nós recomendamos que você instale o Splunk e adiciona alguns dados de maquina para
te ajudar a trabalhar com os tópicos discutidos no livro. Tudo que iremos cobrir pode
ser feito usando o Splunk gratuito (veja abaixo).
Esta sessão descreve como fazer para o Splunk rodar.
26. Baixando o Splunk
Você pode baixar um Splu
suporte de uso moderado do Splunk. Na home page do splunk.com, você verá este
botão:
Clique nele para começar a baixar e instalar o Splunk em computadores rodando
Windows®, Mac™, Linux
Instalando o Splunk
Instalar o Splunk é fácil, então vamos assumir que você vai conseguir fazer isso
sozinho. Se você tiver alguma questão, refira
(http://splunk.com/goto/book#tutorial
Starting Splunk
Para iniciar o Splunk no Windows, lance a aplicação pelo menu Iniciar. Olhe para a tela
do Windows, mostrada na figura 2
Para iniciar o Splunk no Mac OS X ou no Unix, abra a janela do terminal. Vá para o
diretório onde você instalou o Splu
comando, digite:
./splunk start
A última linha de informação que você vê quando o Splunk inicia é:
The Splunk web interface is at http://your
Siga o link para a tela de login. Se você ainda
credenciais padrão são admin e changeme. Depois de logar, a tela de boas
aparecera.
Você pode baixar um Splunk completamente funcionar de graça, para aprendizado ou
suporte de uso moderado do Splunk. Na home page do splunk.com, você verá este
Clique nele para começar a baixar e instalar o Splunk em computadores rodando
, Mac™, Linux® e Unix.
Instalar o Splunk é fácil, então vamos assumir que você vai conseguir fazer isso
sozinho. Se você tiver alguma questão, refira-se ao Tutorial Splunk
http://splunk.com/goto/book#tutorial), que cobre tudo em detalhe.
iniciar o Splunk no Windows, lance a aplicação pelo menu Iniciar. Olhe para a tela
do Windows, mostrada na figura 2-4, e continue lendo.
Para iniciar o Splunk no Mac OS X ou no Unix, abra a janela do terminal. Vá para o
diretório onde você instalou o Splunk, vá para o subdiretório Bin e no prompt de
A última linha de informação que você vê quando o Splunk inicia é:
The Splunk web interface is at http://your-machinename:8000
Siga o link para a tela de login. Se você ainda não tem um usuário e senha, as
credenciais padrão são admin e changeme. Depois de logar, a tela de boas
13
nk completamente funcionar de graça, para aprendizado ou
suporte de uso moderado do Splunk. Na home page do splunk.com, você verá este
Clique nele para começar a baixar e instalar o Splunk em computadores rodando
Instalar o Splunk é fácil, então vamos assumir que você vai conseguir fazer isso
se ao Tutorial Splunk
iniciar o Splunk no Windows, lance a aplicação pelo menu Iniciar. Olhe para a tela
Para iniciar o Splunk no Mac OS X ou no Unix, abra a janela do terminal. Vá para o
e no prompt de
não tem um usuário e senha, as
credenciais padrão são admin e changeme. Depois de logar, a tela de boas-vindas
27. Figura 2-4. A tela de boas vindas
A tela de boas-vindas mostra o que você pode fazer com uma instancia limpa do
Splunk: adicionar dados ou lançar o aplicativo de busca.
Trazendo os dados para serem Indexados
O próximo passo em aprender a explorar o Splunk é adicionar dados o índice para que
você possa explorar eles.
Nós vamos usar alguns dados de exemplo para o propósito deste capítulo. Você pode
encontrar as instruções de como conseguir os dados aqui:
book#add_data
Existem dois passos no processo de indexação:
• Baixando o arquivo de exemplo d
• Dizendo ao Splunk para indexar o arquivo
Para baixar o arquivo de exemplo, siga este link e salve o seu arquivo na sua área de
trabalho: http://splunk.com/goto/book#sample_data
Para adicionar um arquivo ao Splunk:
1. Da tela de boas vindas, clique em
2. Clique From files and directories
3. Escolha Skip preview
4. Clique na opção Upload and index a file
5. Escolha o arquivo que você baixou na sua área de trabalho.
vindas mostra o que você pode fazer com uma instancia limpa do
dados ou lançar o aplicativo de busca.
Trazendo os dados para serem Indexados
O próximo passo em aprender a explorar o Splunk é adicionar dados o índice para que
você possa explorar eles.
Nós vamos usar alguns dados de exemplo para o propósito deste capítulo. Você pode
encontrar as instruções de como conseguir os dados aqui: http://splunk.com/goto/
Existem dois passos no processo de indexação:
• Baixando o arquivo de exemplo do site do Splunk
• Dizendo ao Splunk para indexar o arquivo
Para baixar o arquivo de exemplo, siga este link e salve o seu arquivo na sua área de
http://splunk.com/goto/book#sample_data
Para adicionar um arquivo ao Splunk:
as, clique em Add Data.
From files and directories na parte de baixo da tela.
Skip preview.
Upload and index a file.
5. Escolha o arquivo que você baixou na sua área de trabalho.
14
vindas mostra o que você pode fazer com uma instancia limpa do
O próximo passo em aprender a explorar o Splunk é adicionar dados o índice para que
Nós vamos usar alguns dados de exemplo para o propósito deste capítulo. Você pode
http://splunk.com/goto/
Para baixar o arquivo de exemplo, siga este link e salve o seu arquivo na sua área de
28. 6. Clique Save.
Você terminou de adicionar dados. Vamos falar sobre o que o Splunk está fazendo por
traz das cenas.
Entendendo como o Splunk Indexa os dados
O valor central do Splunk para muitas das organizações é a sua habilidade única de
indexar os dados de maquina para que eles possam
reportados e alertados. Os dados que você começa são chamados de dados crus. O
Splunk indexa os dados crus através da criação de um mapa baseado em tempo das
palavras contidas nos dados sem modificar os dados em si.
Antes do Splunk poder procurar enormes quantidade de dados, ele primeiro deve
indexar os dados. O índice do Splunk é similar aos índices de livros, que apontam para
as páginas com palavras chave específicas. No Splunk, as “páginas” são chamadas de
eventos.
Figura 2-5. As características únicas dos índices do Splunk
O Splunk divide uma corrente de dados de maquina em eventos individuais. Lembre
um evento no dados de maquina pode ser tão simples quanto uma linha em um arquivo
de log ou até tão complicado como u
Cada evento no Splunk tem pelo menos os 4 campos mostrados na tabela 2
adicionar dados. Vamos falar sobre o que o Splunk está fazendo por
Entendendo como o Splunk Indexa os dados
O valor central do Splunk para muitas das organizações é a sua habilidade única de
indexar os dados de maquina para que eles possam ser rapidamente analisados,
reportados e alertados. Os dados que você começa são chamados de dados crus. O
Splunk indexa os dados crus através da criação de um mapa baseado em tempo das
palavras contidas nos dados sem modificar os dados em si.
plunk poder procurar enormes quantidade de dados, ele primeiro deve
indexar os dados. O índice do Splunk é similar aos índices de livros, que apontam para
as páginas com palavras chave específicas. No Splunk, as “páginas” são chamadas de
5. As características únicas dos índices do Splunk
O Splunk divide uma corrente de dados de maquina em eventos individuais. Lembre
um evento no dados de maquina pode ser tão simples quanto uma linha em um arquivo
de log ou até tão complicado como um stack trace contendo várias centenas de linhas.
Cada evento no Splunk tem pelo menos os 4 campos mostrados na tabela 2-1.
15
adicionar dados. Vamos falar sobre o que o Splunk está fazendo por
O valor central do Splunk para muitas das organizações é a sua habilidade única de
ser rapidamente analisados,
reportados e alertados. Os dados que você começa são chamados de dados crus. O
Splunk indexa os dados crus através da criação de um mapa baseado em tempo das
plunk poder procurar enormes quantidade de dados, ele primeiro deve
indexar os dados. O índice do Splunk é similar aos índices de livros, que apontam para
as páginas com palavras chave específicas. No Splunk, as “páginas” são chamadas de
O Splunk divide uma corrente de dados de maquina em eventos individuais. Lembre-se,
um evento no dados de maquina pode ser tão simples quanto uma linha em um arquivo
m stack trace contendo várias centenas de linhas.
1.
29. Tabela 2-1. Campos que o Splunk sempre Indexa
Estes campos padrões são indexados junto dos dados crus. O campo estampa de tempo
(_time) é especial porque os indexadores Splunk usam ele para ordenar os eventos,
permitindo que o Splunk possa recuperar efetivamente dentro de uma janela de tempo.
O capitulo 3 nos traz para o lugar onde a maioria da ação acontece: A interface de busca
do Splunk.
1. Campos que o Splunk sempre Indexa
Estes campos padrões são indexados junto dos dados crus. O campo estampa de tempo
) é especial porque os indexadores Splunk usam ele para ordenar os eventos,
permitindo que o Splunk possa recuperar efetivamente dentro de uma janela de tempo.
O capitulo 3 nos traz para o lugar onde a maioria da ação acontece: A interface de busca
16
Estes campos padrões são indexados junto dos dados crus. O campo estampa de tempo
) é especial porque os indexadores Splunk usam ele para ordenar os eventos,
permitindo que o Splunk possa recuperar efetivamente dentro de uma janela de tempo.
O capitulo 3 nos traz para o lugar onde a maioria da ação acontece: A interface de busca
30. 3 Buscando com o Splunk
Agora que você ganhou um entendimento de como os índices de dados do Splunk
funcionam (no Capítulo 2), vai ser mais fácil de entender o que está acontecendo que
acontece uma pesquisa com o Splunk.
É claro, o objetivo de uma pesquisa é te ajudar a encontrar exatamente o que você
precisa. Isto pode significar filtrar, sumarizar e visualizar uma grande quantidade de
dados, para responder a sua questão sobre os dados. Outras vezes, você pode precisar
grandes quantidades de dados regularmente. Muitas vezes, você simplesmente quer
encontrar a agulha no palheiro, aquele evento enterrado que tirou tudo dos trilhos. O
Summary dashboard lhe fornece uma visão rápida dos dados visíveis para você.
Clique em Launch search app
Home do Splunk, clique em
é mostrado como na figura 3
Figura 3-1. O Summary dashboard do Search app’s
Buscando com o Splunk
Agora que você ganhou um entendimento de como os índices de dados do Splunk
funcionam (no Capítulo 2), vai ser mais fácil de entender o que está acontecendo que
acontece uma pesquisa com o Splunk.
É claro, o objetivo de uma pesquisa é te ajudar a encontrar exatamente o que você
precisa. Isto pode significar filtrar, sumarizar e visualizar uma grande quantidade de
dados, para responder a sua questão sobre os dados. Outras vezes, você pode precisar
andes quantidades de dados regularmente. Muitas vezes, você simplesmente quer
encontrar a agulha no palheiro, aquele evento enterrado que tirou tudo dos trilhos. O
lhe fornece uma visão rápida dos dados visíveis para você.
h search app na aba Welcome do Splunk. Se você estiver na aba
do Splunk, clique em Search sob o menu Your Apps. O Summary dashboard
é mostrado como na figura 3-1.
1. O Summary dashboard do Search app’s
17
Agora que você ganhou um entendimento de como os índices de dados do Splunk
funcionam (no Capítulo 2), vai ser mais fácil de entender o que está acontecendo que
É claro, o objetivo de uma pesquisa é te ajudar a encontrar exatamente o que você
precisa. Isto pode significar filtrar, sumarizar e visualizar uma grande quantidade de
dados, para responder a sua questão sobre os dados. Outras vezes, você pode precisar
andes quantidades de dados regularmente. Muitas vezes, você simplesmente quer
encontrar a agulha no palheiro, aquele evento enterrado que tirou tudo dos trilhos. O
lhe fornece uma visão rápida dos dados visíveis para você.
do Splunk. Se você estiver na aba
Summary dashboard
31. Perceba algumas coisas sobre esta
• A search bar (barra de busca
pesquisa.
• O time range picker (
ajuste do alcance de tempo. Você pode ver eventos dos últimos 15 minuto
exemplo, ou qualquer intervalo de tempo desejado. Para transporte de dados em tempo
real, você pode selecionar um intervalo para a visão, indo de 30 segundos a uma hora.
• O painel de All indexed data
dos dados indexados.
Os próximos 3 painéis mostram o valores mais recentes ou comuns que foram
indexados a cada categoria:
• O painel Sources (Fontes
vem.
• O painel de Source types
• O painel de Hosts (Hospedeiros
Agora vamos dar uma olhada nos menus de negação de busca perto do topo da página:
Figura 3-2. Menus de navegação de bus
• Summary (Sumario) é onde nós estamos.
• Search (Busca) leva para a interface principal de busca, a
(Dashboard de Busca).
• Status (Estado) lista as dashboards no estado da sua instancia do Splunk.
• Dashboards & Views
• Searches & Reports
relatórios.
A próxima seção introduz para você a
Perceba algumas coisas sobre esta dashboard:
barra de busca) no topo está vazia, pronta para você digitar a
(seletor de janela de tempo) a direita da search bar
de tempo. Você pode ver eventos dos últimos 15 minuto
exemplo, ou qualquer intervalo de tempo desejado. Para transporte de dados em tempo
real, você pode selecionar um intervalo para a visão, indo de 30 segundos a uma hora.
All indexed data (Todos os dados indexados) mostra um total
Os próximos 3 painéis mostram o valores mais recentes ou comuns que foram
indexados a cada categoria:
Fontes) mostra de quais arquivos (ou outras fontes) seus dados
Source types (Tipos de Fontes) mostra os tipos de fontes nos seus dados.
Hospedeiros) mostra de quais hospedeiros os seus dados vieram.
Agora vamos dar uma olhada nos menus de negação de busca perto do topo da página:
2. Menus de navegação de busca
é onde nós estamos.
leva para a interface principal de busca, a Search dashboard
lista as dashboards no estado da sua instancia do Splunk.
• Dashboards & Views (Dashboards & Visões) lista as dashboards e as visões.
• Searches & Reports (Buscas & Relatórios) lista as suas buscas salvas e os seus
A próxima seção introduz para você a Search dashboard.
18
) no topo está vazia, pronta para você digitar a
search bar permite o
de tempo. Você pode ver eventos dos últimos 15 minutos, por
exemplo, ou qualquer intervalo de tempo desejado. Para transporte de dados em tempo
real, você pode selecionar um intervalo para a visão, indo de 30 segundos a uma hora.
total corrente
Os próximos 3 painéis mostram o valores mais recentes ou comuns que foram
) mostra de quais arquivos (ou outras fontes) seus dados
) mostra os tipos de fontes nos seus dados.
) mostra de quais hospedeiros os seus dados vieram.
Agora vamos dar uma olhada nos menus de negação de busca perto do topo da página:
Search dashboard
) lista as dashboards e as visões.
lista as suas buscas salvas e os seus
32. A Dashboard de Busca
Se você clicar na opção
a Search dashboard (algumas vezes chamadas de linha do tempo ou visão instantânea
linha do tempo). Quando a busca começar, os resultados vão quase que imediatamente
começar a aparecer. Por exemplo, col
recuperando todos os dados nos seus índices padrão, e uma tela similar a da figura 3
vai aparecer.
Figura 3-3. A Search dashboard
Vamos examinar o conteúdo desta dashboard:
• Timeline (Linha do Tempo):
encaixam na pesquisa por tempo..
A Dashboard de Busca
Se você clicar na opção Seach ou entrar uma busca na search bar, a pagina muda para
(algumas vezes chamadas de linha do tempo ou visão instantânea
linha do tempo). Quando a busca começar, os resultados vão quase que imediatamente
começar a aparecer. Por exemplo, colocando um asterisco (*) na search bar
recuperando todos os dados nos seus índices padrão, e uma tela similar a da figura 3
desta dashboard:
• Timeline (Linha do Tempo): Uma representação gráfica do número de eventos que se
encaixam na pesquisa por tempo..
19
, a pagina muda para
(algumas vezes chamadas de linha do tempo ou visão instantânea
linha do tempo). Quando a busca começar, os resultados vão quase que imediatamente
search bar
recuperando todos os dados nos seus índices padrão, e uma tela similar a da figura 3-3
representação gráfica do número de eventos que se
33. • Fields sidebar (Barra lateral de campos):
contagens de eventos. Este menu também permite que você adicione campos aos
resultados.
• Field discovery switch (Botão de descoberta de campos):
descoberta de campos ligada ou desligada. Quando o Splunk executa uma busca e a
descoberta de campos esta ligada, o Splunk tenta identificar campos automaticamente
com a busca atual.
• Results area (Área de resultados):
ordenados pelas Timestamps
evento. Sob o Raw Text
selecionados da Fields sidebar
Quando você começar a digitar na search bar, informação sensível ao contexto irá
começar a aparecer sob a barra, com as pesquisas que se encaixam a esquerda e a
ajuda a direita:
Figura 3-4. Informação útil aparece quando você coloca texto na search bar
Abaixo do time range picker, você vai v
• Fields sidebar (Barra lateral de campos): Mostra campos relevantes junto da
contagens de eventos. Este menu também permite que você adicione campos aos
d discovery switch (Botão de descoberta de campos): Torna automaticamente a
descoberta de campos ligada ou desligada. Quando o Splunk executa uma busca e a
descoberta de campos esta ligada, o Splunk tenta identificar campos automaticamente
• Results area (Área de resultados): Mostra os eventos de sua busca. Eventos são
Timestamps (Estampas de Tempo), que aparecem a esquerda de cada
Raw Text (Texto Cru) de cada evento estão quaisquer campos foram
Fields sidebar para que o eventos possua valores correspondentes.
Quando você começar a digitar na search bar, informação sensível ao contexto irá
começar a aparecer sob a barra, com as pesquisas que se encaixam a esquerda e a
4. Informação útil aparece quando você coloca texto na search bar
, você vai ver uma linha de icones:
20
Mostra campos relevantes junto da
contagens de eventos. Este menu também permite que você adicione campos aos
Torna automaticamente a
descoberta de campos ligada ou desligada. Quando o Splunk executa uma busca e a
descoberta de campos esta ligada, o Splunk tenta identificar campos automaticamente
Mostra os eventos de sua busca. Eventos são
), que aparecem a esquerda de cada
) de cada evento estão quaisquer campos foram
para que o eventos possua valores correspondentes.
Quando você começar a digitar na search bar, informação sensível ao contexto irá
começar a aparecer sob a barra, com as pesquisas que se encaixam a esquerda e a
34. Figura 3-5. Ícones de Busca
Os controles de busca
começou uma busca, ou se ela já tiver acabado, eles se tornarão inativos e acinzentados.
Mas se você estiver fazendo uma busca e ela demorar demais para completar, você pode
usar estes ícones para controlar o progresso da dela.
• Enviando uma busca para o segundo plano deixa que ela continue rodando no servidor
até que esteja completa enquanto você pode fazer outras buscas ou até fechar a janela e
deslogar. Quando você clicar em
plano), a search bar fica limpa e você pode continuar com outras tarefas. Quando ela
completar, uma notificação irá aparecer na sua tela se você ainda estiver logado; caso
contrario, o Splunk te manda um e
Se você quer checar o progresso no meio tempo, eu depois, clique em
pagina.
• Pausando uma busca temporariamente para ela e deixa que você explore os resultado
até este ponto. Enquanto a busca está pausada, o ícone
clicar no botão, a busca continua de onde você parou.
• Finalizar uma busca para ela antes que ela complete, mas
este ponto para que você possa ver e explorar ela no search
• Em contraste, cancelar uma busca para ela, descarta os resultados e limpa eles da tela.
O ícone do Job inspector
que mostra os detalhes da sua busca, como os custos de execução da busca, as
mensagens de debug e as p
Use o menu de Save (Salvar
os resultados. Se você salvar a busca, você pode encontrar
Reports (Buscas & Relatórios
no menu Jobs no canto superior direito da tela.
só são ativados quando a busca está acontecendo. Se você não
começou uma busca, ou se ela já tiver acabado, eles se tornarão inativos e acinzentados.
Mas se você estiver fazendo uma busca e ela demorar demais para completar, você pode
ra controlar o progresso da dela.
• Enviando uma busca para o segundo plano deixa que ela continue rodando no servidor
até que esteja completa enquanto você pode fazer outras buscas ou até fechar a janela e
. Quando você clicar em Send to background (Enviar para o segundo
fica limpa e você pode continuar com outras tarefas. Quando ela
completar, uma notificação irá aparecer na sua tela se você ainda estiver logado; caso
contrario, o Splunk te manda um e-mail (se você especificou um endereço de e
Se você quer checar o progresso no meio tempo, eu depois, clique em Jobs
• Pausando uma busca temporariamente para ela e deixa que você explore os resultado
até este ponto. Enquanto a busca está pausada, o ícone muda para um botão de play. Ao
clicar no botão, a busca continua de onde você parou.
• Finalizar uma busca para ela antes que ela complete, mas mantém os resultados até
este ponto para que você possa ver e explorar ela no search Views.
elar uma busca para ela, descarta os resultados e limpa eles da tela.
Job inspector (Inspetor de trabalhos) te leva a página do Job inspector
que mostra os detalhes da sua busca, como os custos de execução da busca, as
mensagens de debug e as propriedades de funcionamento da busca.
Salvar) para salvar a busca, os resultados ou salvar e compartilhar
os resultados. Se você salvar a busca, você pode encontrar-la no menu Searcher &
Buscas & Relatórios). Se você salvar os resultados, você pode visualizar
no canto superior direito da tela.
21
só são ativados quando a busca está acontecendo. Se você não
começou uma busca, ou se ela já tiver acabado, eles se tornarão inativos e acinzentados.
Mas se você estiver fazendo uma busca e ela demorar demais para completar, você pode
• Enviando uma busca para o segundo plano deixa que ela continue rodando no servidor
até que esteja completa enquanto você pode fazer outras buscas ou até fechar a janela e
Enviar para o segundo
fica limpa e você pode continuar com outras tarefas. Quando ela
completar, uma notificação irá aparecer na sua tela se você ainda estiver logado; caso
um endereço de e-mail).
Jobs no topo da
• Pausando uma busca temporariamente para ela e deixa que você explore os resultado
muda para um botão de play. Ao
os resultados até
elar uma busca para ela, descarta os resultados e limpa eles da tela.
Job inspector,
que mostra os detalhes da sua busca, como os custos de execução da busca, as
) para salvar a busca, os resultados ou salvar e compartilhar
Searcher &
). Se você salvar os resultados, você pode visualizar-los
35. Use o menu Create (Criar
agendar buscas. Nós iremos explicar eles em detalhe no capítulo 5.
superior esquerdo da área de resultados, você pode ver os seguintes ícones.
Figura 3-6. Ícones da área de resultados
Por padrão, o Splunk mostra os eventos em forma de lista, dos mais recentes aos mais
antigos, mas você pode clicar n
de tabela, ou clicar no ícone Chart (Gráfico) para ver eles como um gráfico. O botão
exportar exporta os resultados da pesquisa em vários formatos: CSV, eventos crus,
XML ou JSON.
Eventos? Resultados? Qual é a diferença?
Tecnicamente falando, eventos recuperados de alguns de seus índices são chamados de
“eventos”. Se este eventos estão transformados ou sumarizados de forma que eles não
fique mais na forma de mapeamentos de um
chamados de “resultados”.
comando de search é um evento, mas a URL mais visitada hoje é um resultado. Com
isso, nós não iremos ser tão chatos, e vamos usar ambas as formas como sinônimos
SPL™: Linguagem de Processamento de Busca
O Splunk ajuda a resumir os dados de uma infinidade de eventos indexados de uma
forma que ela seja útil para responder questões do mundo real.
A figura 3-7 ilustra um padrão comum de busca: Recupere eventos e g
Está busca retorna os valoras mais presentes nos erros do syslog.
Criar) para dashboards, alertas, relatórios, tipos de eventos e
agendar buscas. Nós iremos explicar eles em detalhe no capítulo 5. Indo para o canto
superior esquerdo da área de resultados, você pode ver os seguintes ícones.
6. Ícones da área de resultados
Por padrão, o Splunk mostra os eventos em forma de lista, dos mais recentes aos mais
antigos, mas você pode clicar no ícone Table (Tabela) para ver os resultados em forma
de tabela, ou clicar no ícone Chart (Gráfico) para ver eles como um gráfico. O botão
exportar exporta os resultados da pesquisa em vários formatos: CSV, eventos crus,
Qual é a diferença?
Tecnicamente falando, eventos recuperados de alguns de seus índices são chamados de
Se este eventos estão transformados ou sumarizados de forma que eles não
fique mais na forma de mapeamentos de um-para-um com os eventos em disco, eles são
chamados de “resultados”. Por exemplo, um evento de acesso web recuperado com o
comando de search é um evento, mas a URL mais visitada hoje é um resultado. Com
isso, nós não iremos ser tão chatos, e vamos usar ambas as formas como sinônimos
SPL™: Linguagem de Processamento de Busca
O Splunk ajuda a resumir os dados de uma infinidade de eventos indexados de uma
forma que ela seja útil para responder questões do mundo real.
7 ilustra um padrão comum de busca: Recupere eventos e gere um relatório.
Está busca retorna os valoras mais presentes nos erros do syslog.
22
) para dashboards, alertas, relatórios, tipos de eventos e
Indo para o canto
Por padrão, o Splunk mostra os eventos em forma de lista, dos mais recentes aos mais
o ícone Table (Tabela) para ver os resultados em forma
de tabela, ou clicar no ícone Chart (Gráfico) para ver eles como um gráfico. O botão
exportar exporta os resultados da pesquisa em vários formatos: CSV, eventos crus,
Tecnicamente falando, eventos recuperados de alguns de seus índices são chamados de
Se este eventos estão transformados ou sumarizados de forma que eles não
disco, eles são
Por exemplo, um evento de acesso web recuperado com o
comando de search é um evento, mas a URL mais visitada hoje é um resultado. Com
isso, nós não iremos ser tão chatos, e vamos usar ambas as formas como sinônimos.
O Splunk ajuda a resumir os dados de uma infinidade de eventos indexados de uma
ere um relatório.
36. Figura 3-7. Como uma simples busca no Splunk é processada
A String inteira
sourcetype=syslog ERROR | top user | fields
é chamada de busca, e o caractere de
fazem parte da busca.
Pipes
A primeira palavra chave depois da barra é o nome do comando de busca. Neste caso os
comandos são top e fields
existe um comando implícito
comece com uma barra. Então, realmente, estes são os 3 comandos de busca na
pesquisa acima: search,
Os resultados de cada comando são passados como entrada para o próximo coma
você alguma vez usou o shell do Linux como um bash, este conceito provavelmente lhe
é familiar.
AND Implícito
O sourcetype=syslog ERROR
eventos que tem o sourcetype
top user
O próximo comando, top
padrão, o top retorna os 10 valores mais comuns para o campo especificado, em ordem
decrescente. Neste caso, o campo
que mais aparecem nos eventos do syslog que contenham o termo
top é uma tabela com 3 colunas (
7. Como uma simples busca no Splunk é processada
sourcetype=syslog ERROR | top user | fields - percent
é chamada de busca, e o caractere de barra (|) separa os comandos individuais que
A primeira palavra chave depois da barra é o nome do comando de busca. Neste caso os
fields. Que comando está recuperando os eventos do índice? Bem,
implícito chamado search, no começo de qualquer busca que não
comece com uma barra. Então, realmente, estes são os 3 comandos de busca na
, top, e fields.
Os resultados de cada comando são passados como entrada para o próximo coma
você alguma vez usou o shell do Linux como um bash, este conceito provavelmente lhe
sourcetype=syslog ERROR diz ao comando search para recuperar somente os
sourcetype igual a syslog AND (&) contenham o termo ERROR
top, retorna os valores mais comuns do campo especificado. Por
retorna os 10 valores mais comuns para o campo especificado, em ordem
decrescente. Neste caso, o campo especificado é user, então o top retorna os usuários
que mais aparecem nos eventos do syslog que contenham o termo ERROR. A saída do
é uma tabela com 3 colunas (user, count e percent), com 10 linha de valores.
23
barra (|) separa os comandos individuais que
A primeira palavra chave depois da barra é o nome do comando de busca. Neste caso os
. Que comando está recuperando os eventos do índice? Bem,
, no começo de qualquer busca que não
comece com uma barra. Então, realmente, estes são os 3 comandos de busca na
Os resultados de cada comando são passados como entrada para o próximo comando, se
você alguma vez usou o shell do Linux como um bash, este conceito provavelmente lhe
para recuperar somente os
ERROR.
, retorna os valores mais comuns do campo especificado. Por
retorna os 10 valores mais comuns para o campo especificado, em ordem
retorna os usuários
. A saída do
), com 10 linha de valores.
37. 24
Também é importante entender que a saída do comando top se torna na entrada do
próximo comando depois da barra. Neste sentido, o top transformou os resultados em
um conjunto menor de valores, que são ainda mais refinados pelo próximo comando.
Campos – Porcentagem
O segundo comando, fields, com um argumento de – percent, diz ao Splunk para
remover a coluna percent da saída do comando top.
Análise Exploratória de Dados: Escavando com o Splunk
E se você não souber nada sobre os dados? Seja criativo e explore. Você pode fazer
uma busca por “*” para recuperar todos os eventos e então aprender sobre eles: olhe
para alguns eventos, extraia alguns campos interessantes, extraia um top deste campo,
veja como os eventos estão divididos, talvez derive alguns campos novos baseados em
outros campos, organize os seus resultados, veja como um campo vária em relação a
outros campos, etc. (Para mais dicas sobre o aprendizado do que se encontra naquela
fonte que você não tem idéia, siga para http://splunk.com/goto/book#mining_tips.)
Antes de mergulharmos nos comandos de busca no Capitulo 4, vamos cobrir o comando
search em si: um comando bastante especial e crítico para o uso do Splunk.
O comando de busca
O comando search é o burro de carga do Splunk. É um dos mais simples e poderosos
comandos. É um comando tão básico que você precisa escrever-lo em lugar algum antes
da primeira barra, por que ele é invocado implicitamente no começa da pesquisa,
recuperando eventos dos índices no disco.
Nem todas as buscas recuperam dados dos índices do Splunk. Por exemplo, o comando
inputcsv lê os dados de um arquivo CSV. Para colocar comandos deste tipo como o
primeiro comando, coloque uma barra antes deles. Por exemplo | inputcsv
myfile.csv
Quando ele não é o primeiro comando na busca, o comando search pode filtrar um
grupo de resultados da busca anterior. Para fazer isso, use o comando search como
qualquer outro comando - com a barra seguida pelo nome de um comando explicito.
Por exemplo, o comando error | top url | search count>=2 busca por eventos no
disco que possuam a palavra error, encontrar as URLs que mais aparecem, e filtrem
qualquer URL que só apareça uma vez. Em outras palavras, dos 10 eventos de erro que
o top retornar, me mostre somente aqueles que tem de duas a mais instancias da mesma
URL.
A tabela 3-1 mostra alguns exemplos de chamadas implícitas para o comando search e
seus resultados.
38. Tabela 3-1. Comandos de busca implícitos
Dicas para o uso do comando de busca
Aqui estão algumas dicas para o uso do comando
outros comandos também.
Sensibilidade a maiúsculas
Argumentos de palavras chave para o comando
mas os nomes do campos são. (Veja o apêndice B para mais detalhes sobre a
sensibilidade a maiúsculas.)
Usando aspas em uma pesquisa
Você precisa de aspas em volta de frases ou valores de campos que contenham
caracteres de separação como espaço, virgulas, barras, chaves, colchetes,
sinais de igual, etc. Então,
por exemplo, você vai precisar colocar aspas em volta do valor, como em
host=”webserver
#9”. Em adição, para procurar por palavras reservadas (AND, OR, NOT,
aspas.
A busca por aspas usa barras invertidas para escapar do efeito padrão das aspas.
Para encontrar a frase —
por: “Splunk changed ”life itself
Lógica Booleana
Argumentos —palavras chave e campos
implicitamente.
Você pode especificar que qualquer um dos dois ou mais argumentos precisariam ser
verdadeiros, usando a palavra ch
1. Comandos de busca implícitos
Dicas para o uso do comando de busca
ão algumas dicas para o uso do comando search. Elas se aplicam a vários
outros comandos também.
Sensibilidade a maiúsculas
Argumentos de palavras chave para o comando search não são sensíveis a maiúsculas,
mas os nomes do campos são. (Veja o apêndice B para mais detalhes sobre a
sensibilidade a maiúsculas.)
Usando aspas em uma pesquisa
Você precisa de aspas em volta de frases ou valores de campos que contenham
separação como espaço, virgulas, barras, chaves, colchetes,
sinais de igual, etc. Então, host=web09 está bom, mas se o valor do host tem espaços,
por exemplo, você vai precisar colocar aspas em volta do valor, como em
ição, para procurar por palavras reservadas (AND, OR, NOT,
A busca por aspas usa barras invertidas para escapar do efeito padrão das aspas.
—Splunk changed “life itself” for me— você teria de procurar
”life itself” for me”
palavras chave e campos— para o comando search são dados
Você pode especificar que qualquer um dos dois ou mais argumentos precisariam ser
verdadeiros, usando a palavra chave OR, em letras maiúsculas. O OR tem precedência
25
Elas se aplicam a vários
não são sensíveis a maiúsculas,
mas os nomes do campos são. (Veja o apêndice B para mais detalhes sobre a
Você precisa de aspas em volta de frases ou valores de campos que contenham
separação como espaço, virgulas, barras, chaves, colchetes, parênteses,
está bom, mas se o valor do host tem espaços,
por exemplo, você vai precisar colocar aspas em volta do valor, como em
ição, para procurar por palavras reservadas (AND, OR, NOT, etc.), use
A busca por aspas usa barras invertidas para escapar do efeito padrão das aspas.
você teria de procurar
ados juntos,
Você pode especificar que qualquer um dos dois ou mais argumentos precisariam ser
ave OR, em letras maiúsculas. O OR tem precedência
39. 26
maior que o AND, então você pode em argumentos que usam OR como tendo
parênteses em volta deles.
Para filtrar os eventos que contem uma palavra em particular, use a palavra chave NOT.
Finalmente, você pode usar parênteses explicitamente para tornar as coisas mais claras
se você quiser. Por exemplo, a busca por x y OR z NOT w é a mesma coisa que AND (y
OR z) AND NOT w.
Subpesquisas
O comando search, como todos os comandos, podem ser usados como um subpesquisa
— uma busca cujo os resultados serão usados como argumentos para outro comando de
busca.
Subpesquisas são fechadas em colchetes. Por exemplo, para encontrar todos os
eventos do syslog do usuário tiveram um erro de login, use o seguinte comando:
sourcetype=syslog [search login error | return user]
Aqui, a busca por eventos tendo os termos login e error são executados, retornando o
primeiro valor de user encontrado, diga-se bob, seguido por uma pesquisa para o
sourcetype=syslog user=bob.
Se você está pronto para continuar a sua aventura de aprendizado no Splunk, o Capitulo
4 introduz para você mais comandos que você pode considerar imediatamente úteis.
40. 4 SPL: Linguagem de Processamento
de Busca
No capítulo 3, nós cobrimos a maioria dos comandos básicos
Este capitulo descreve alguns dos outros comandos SPL que você vai querer saber.
Este capitulo usa um aproximação mais crua, ensinando os comandos SPL através de
exemplos. Para a documentação de referencia completa, veja
com.
A tabela 4-1 sumariza os comandos SPL cobertos neste capitulo, por categoria.
Tabela 4-1. Comandos comuns de SPL
Organizando Resultados
Organizar comandos é o trabalho do comando
sort
O comando sort organiza os resultados das
mostra alguns dos exemplos.
4 SPL: Linguagem de Processamento
No capítulo 3, nós cobrimos a maioria dos comandos básicos do Splunk na busca SPL.
Este capitulo descreve alguns dos outros comandos SPL que você vai querer saber.
Este capitulo usa um aproximação mais crua, ensinando os comandos SPL através de
exemplos. Para a documentação de referencia completa, veja http://docs.splunk.
1 sumariza os comandos SPL cobertos neste capitulo, por categoria.
1. Comandos comuns de SPL
Organizando Resultados
Organizar comandos é o trabalho do comando sort.
organiza os resultados das busca por campos específicos. A tabela 4
mostra alguns dos exemplos.
27
4 SPL: Linguagem de Processamento
do Splunk na busca SPL.
Este capitulo descreve alguns dos outros comandos SPL que você vai querer saber.
Este capitulo usa um aproximação mais crua, ensinando os comandos SPL através de
.splunk.
1 sumariza os comandos SPL cobertos neste capitulo, por categoria.
busca por campos específicos. A tabela 4-2
41. Resumindo partes da busca
Se nós simplesmente mostrarmos partes de uma série de comandos (como nós fizemos
na tabela 4-2), você vai ver:
Isto significa que alguma busca veio antes do comando, mas nós estamos nos focando
no que vem depois.
Tabela 4-2. Exemplos de Comando sort
Dica: A ordem crescente é o resultado padrão das buscas. Para reverter a ordem dos
resultados, use o sinal de menos na frente do campos escolhido para organizar os
resultados.
A figura 4-1 ilustra o segundo exemplo. Nós vamos organizar por preços crescentes e
notas decrescentes. O primeiro resultado vai ser o item mais barato e mais be
Se nós simplesmente mostrarmos partes de uma série de comandos (como nós fizemos
2), você vai ver: ... |
Isto significa que alguma busca veio antes do comando, mas nós estamos nos focando
sort
: A ordem crescente é o resultado padrão das buscas. Para reverter a ordem dos
resultados, use o sinal de menos na frente do campos escolhido para organizar os
1 ilustra o segundo exemplo. Nós vamos organizar por preços crescentes e
notas decrescentes. O primeiro resultado vai ser o item mais barato e mais be
28
Se nós simplesmente mostrarmos partes de uma série de comandos (como nós fizemos
Isto significa que alguma busca veio antes do comando, mas nós estamos nos focando
: A ordem crescente é o resultado padrão das buscas. Para reverter a ordem dos
resultados, use o sinal de menos na frente do campos escolhido para organizar os
1 ilustra o segundo exemplo. Nós vamos organizar por preços crescentes e
notas decrescentes. O primeiro resultado vai ser o item mais barato e mais bem votado.
42. Figura 4-1. Comando sort
Filtrando Resultados
Este comandos pegam os resultados da busca anterior e reduzem eles em grupos menos
de resultados. Em outras palavras, você está estreitando a sua visão dos dados para
mostrar somente os resultad
where
O comando de filtragem
a avaliação funcionar e o resultado for
resultado é descartado. Por exemplo:
source=job_listings | where salary > industry_average
Este exemplo recupera trabalhos listando e descartando aqueles que o salário não é
maior do que o valor médio da industria. Ele também descarta os eventos que estão em
falta de um campo salary
This example compares two fields
something we can only do with the
field values to literal values, simply use the
Este exemplo compara dois campos
podemos fazer com o comando
seus valores literais, simplesmente use o comando
source=job_listings salary>80000
Filtrando Resultados
Este comandos pegam os resultados da busca anterior e reduzem eles em grupos menos
de resultados. Em outras palavras, você está estreitando a sua visão dos dados para
mostrar somente os resultados que você está procurando.
O comando de filtragem where avalia uma expressão para a filtragem dos resultados. Se
a avaliação funcionar e o resultado for TRUE, o resultado é mantido; senão, o
resultado é descartado. Por exemplo:
| where salary > industry_average
Este exemplo recupera trabalhos listando e descartando aqueles que o salário não é
maior do que o valor médio da industria. Ele também descarta os eventos que estão em
salary ou industry_average.
example compares two fields—salary and industry_average—
something we can only do with the where command. When comparing
field values to literal values, simply use the search command:
Este exemplo compara dois campos - salary and industry_average - algo que nós só
podemos fazer com o comando where. Quando comparando valores de campos para
seus valores literais, simplesmente use o comando search:
source=job_listings salary>80000
29
Este comandos pegam os resultados da busca anterior e reduzem eles em grupos menos
de resultados. Em outras palavras, você está estreitando a sua visão dos dados para
avalia uma expressão para a filtragem dos resultados. Se
, o resultado é mantido; senão, o
Este exemplo recupera trabalhos listando e descartando aqueles que o salário não é
maior do que o valor médio da industria. Ele também descarta os eventos que estão em
algo que nós só
. Quando comparando valores de campos para
43. Tabela 4-3. Exemplos do comando where
A figura 4-2 ilustra o coman
Figure 4-2. Exemplo do comando where
Dicas para usar o where
Como o comando eval, o comando
de avaliação de expressões (veja o apêndice E para uma lista completa).
dedup
Removendo os dados redundantes é a razão comando de filtragem
comando remove resultados subsequentes que se encaixam em um critério.
comando só pode manter
valores dos campos especificados. Se o
pra 1 e retorna o primeiro valor encontrado (que é normalmente o mais recente).
where
2 ilustra o comando where distance/time > 100.
where
Dicas para usar o where
, o comando where funciona com um grande grupo de funções
de avaliação de expressões (veja o apêndice E para uma lista completa).
Removendo os dados redundantes é a razão comando de filtragem dedup
comando remove resultados subsequentes que se encaixam em um critério.
manter o primeiro resultado do count para cada combinação dos
specificados. Se o count não for especificado, por padrão ele vai
pra 1 e retorna o primeiro valor encontrado (que é normalmente o mais recente).
30
funciona com um grande grupo de funções
dedup. Este
comando remove resultados subsequentes que se encaixam em um critério. Este é, este
para cada combinação dos
não for especificado, por padrão ele vai
pra 1 e retorna o primeiro valor encontrado (que é normalmente o mais recente).
44. Tabela 4-4. Exemplos do comando dedup
A figura 4-3 ilustra o comando
Figure 4-3. Exemplo do comando dedup
Pontos Chave
• Para manter todos os resultados mas remover os valores duplicados, use a opção
keepevents.
• Os resultados que retornam são os primeiros resultados a serem encontrados com as
combinações deste valores es
sortby para mudar a ordem quando necessário.
dedup
3 ilustra o comando dedup 3 source.
dedup
• Para manter todos os resultados mas remover os valores duplicados, use a opção
• Os resultados que retornam são os primeiros resultados a serem encontrados com as
combinações deste valores específicos - geralmente os mais recentes. Use a clausula
para mudar a ordem quando necessário.
31
• Para manter todos os resultados mas remover os valores duplicados, use a opção
• Os resultados que retornam são os primeiros resultados a serem encontrados com as
geralmente os mais recentes. Use a clausula
45. • Campos onde o campo especificado não existe são mantidos por padrão. Use a opção
keepnull=<true/false> para substituir o comportamento padrão, se
head
O comando de filtragem
permite que uma busca pare de recuperar eventos do disco quando ele encontrar o
número desejado de resultados.
Da frente ou de traz?
O oposto do comando é o
primeiro. Os resultados são retornados em ordem reversa, começando pelo fim dos
resultados. Lembre-se que este primeiro é relativo a ordem de entrada dos eventos, que
normalmente desce confor
10 retorna os últimos 10 eventos.
Tabela 4-5. Exemplos do comando head
Figura 4-4. Exemplo do comando head
• Campos onde o campo especificado não existe são mantidos por padrão. Use a opção
para substituir o comportamento padrão, se desejar.
O comando de filtragem head retorna os primeiros resultados do count. Usar o
permite que uma busca pare de recuperar eventos do disco quando ele encontrar o
número desejado de resultados.
O oposto do comando é o head comando tail, que retorna o último resultado, em vez do
primeiro. Os resultados são retornados em ordem reversa, começando pelo fim dos
se que este primeiro é relativo a ordem de entrada dos eventos, que
normalmente desce conforme a ordem do tempo, significando que, por exemplo,
10 eventos.
head
head
32
• Campos onde o campo especificado não existe são mantidos por padrão. Use a opção
retorna os primeiros resultados do count. Usar o head
permite que uma busca pare de recuperar eventos do disco quando ele encontrar o
, que retorna o último resultado, em vez do
primeiro. Os resultados são retornados em ordem reversa, começando pelo fim dos
se que este primeiro é relativo a ordem de entrada dos eventos, que
me a ordem do tempo, significando que, por exemplo, head
46. 33
Agrupando Resultados
O comando transaction agrupa eventos relacionados.
transaction
O comando transaction agrupa eventos que se encontram em várias restrições em
transações - coleções de eventos, possivelmente de múltiplas fontes. Os eventos são
agrupados se todas as definições de restrições da transação são alcançadas. Transações
são compostas de texto cru (o campo _raw) de cada evento membro, a estampa de
tempo (o campo _time) do membro mais antigo, a união de todos os outros campos de
cada membro, e alguns campos adicionais que descrevem a transação como duration e
eventcount.
48. O segundo exemplo na tabela 4-6, transaction clientip maxspan=30s
maxpause=5s, é ilustrado na figura 4
Figura 4-5. Exemplo do comando transaction
Pontos chave
Todos argumentos do comando
de ser especificadas para definir como os eventos serão agrupado em transações.
O Splunk não necessariamente interpreta a transação definida por
como uma conjunção (field1 AND field2
field2 OR field3) destes campos. Se existe uma relação transitiva entre os campos no
<fields list>, o comando
Por exemplo, se você procura
eventos agrupados em uma única transação:
event=1 host=a
event=2 host=a cookie=b
event=3 cookie=b
Os primeiros dois eventos estão junto pois eles tem o
está com eles pois ele divide o
O comando transação produz dois campos:
• duration: a diferença entre as estampas de tempo para o primeiro e último evento na
transação.
transaction clientip maxspan=30s
, é ilustrado na figura 4-5.
transaction
Todos argumentos do comando transaction são opcionais, mas algumas restrições tem
de ser especificadas para definir como os eventos serão agrupado em transações.
O Splunk não necessariamente interpreta a transação definida por múltiplos
field1 AND field2 AND field3) ou uma disjunção (
) destes campos. Se existe uma relação transitiva entre os campos no
, o comando transaction a usa.
Por exemplo, se você procura-se por transaction host cookie, você pode ver os seguintes
eventos agrupados em uma única transação:
event=2 host=a cookie=b
Os primeiros dois eventos estão junto pois eles tem o host=a em comum e o terceiro
está com eles pois ele divide o cookie=b com o segundo evento.
ransação produz dois campos:
: a diferença entre as estampas de tempo para o primeiro e último evento na
35
são opcionais, mas algumas restrições tem
de ser especificadas para definir como os eventos serão agrupado em transações.
múltiplos campos
) ou uma disjunção (field1 OR
) destes campos. Se existe uma relação transitiva entre os campos no
, você pode ver os seguintes
em comum e o terceiro
: a diferença entre as estampas de tempo para o primeiro e último evento na
49. • eventcount: número de eventos na transação.
depois nesta seção) e o comando
existe uma importante distinção:
• stats calcula valores estatísticos nos eventos agrupados pelos valores dos campos(e
então os eventos descartados).
• transaction agrupa evento, e suporta mais opções em como eles podem s
mantém o texto cru e os valores dos outros campos dos eventos originais.
Reportando Resultados
Os comandos de reportagem cobertos nesta seção incluem
top
Tendo uma lista de campos, o comando
valores de campos, junto de suas contagens e porcentagens. Se você especificar por
clausula os campos adicionais opcionais, o valores mais
distinto de valores dos campos por clausula que f
O oposto do comum é raro
O oposto do comando top
os valores menos comuns de um campo (em vez dos mais comuns). O comando
exatamente isso.
Tabela 4-7. Exemplos do comando top
O segundo exemplo da tabela 4
: número de eventos na transação. Mesmo que o comando stats
comando transaction ambos permitem que você agrupe eventos,
existe uma importante distinção:
calcula valores estatísticos nos eventos agrupados pelos valores dos campos(e
então os eventos descartados).
agrupa evento, e suporta mais opções em como eles podem ser agrupados e
o texto cru e os valores dos outros campos dos eventos originais.
Reportando Resultados
Os comandos de reportagem cobertos nesta seção incluem top, stats, chart,e
Tendo uma lista de campos, o comando top retorna os grupos mais freqüentes
valores de campos, junto de suas contagens e porcentagens. Se você especificar por
clausula os campos adicionais opcionais, o valores mais freqüentes para cada grupo
distinto de valores dos campos por clausula que foram retornados.
top é o comando rare. Algumas vezes você que saber quais são
os valores menos comuns de um campo (em vez dos mais comuns). O comando
top
O segundo exemplo da tabela 4-7, top 2 user by host, é ilustrado na figura 4
36
stats (coberto
permitem que você agrupe eventos,
calcula valores estatísticos nos eventos agrupados pelos valores dos campos(e
er agrupados e
,e timechart.
freqüentes deste
valores de campos, junto de suas contagens e porcentagens. Se você especificar por
para cada grupo
. Algumas vezes você que saber quais são
os valores menos comuns de um campo (em vez dos mais comuns). O comando rare faz
, é ilustrado na figura 4-6.
50. Figura 4-6. Exemplo do comando top
stats
O comando stats calcula as estatísticas agregadas sobre um dataset, similar a uma
agregação em SQL. A tabulação resultante pode conter uma linha, que representa a
agregação de todo o grupo de resultados, ou uma linha para cada valor distinto
especificado por clausula.
Existe mais de um comando para cálculos estatísticos. Os comandos
chart e timechart fazem os mesmos cálculos estatísticos nos seus dados, mas retornam
grupos de resultados diferentes para permitir que você possa conseguir os resultados
necessários mais facilmente.
• O comando stats retorna uma tabela de resultados onde cada linha representa uma
combinação única dos valores dos campos agrupados.
• O comando chart retorna a mesma tabela de resultados, com as linhas como os
campos arbitrários.
• O comando timechart retorna os mesmos resultados tabulados, mas a linha é colocada
como um campo interno,
tempo..
O que “as” significa
Nota: O uso da palavra chave “as” em alguns dos comandos na tabe
usado para renome ar um campo. Por exemplo,
ele tem que adicionar todos os campos
“Revenue.”
top
calcula as estatísticas agregadas sobre um dataset, similar a uma
agregação em SQL. A tabulação resultante pode conter uma linha, que representa a
agregação de todo o grupo de resultados, ou uma linha para cada valor distinto
especificado por clausula.
xiste mais de um comando para cálculos estatísticos. Os comandos stats,
fazem os mesmos cálculos estatísticos nos seus dados, mas retornam
grupos de resultados diferentes para permitir que você possa conseguir os resultados
is facilmente.
retorna uma tabela de resultados onde cada linha representa uma
combinação única dos valores dos campos agrupados.
retorna a mesma tabela de resultados, com as linhas como os
retorna os mesmos resultados tabulados, mas a linha é colocada
como um campo interno, _time, que te permite organizar o seu gráfico por períodos de
O uso da palavra chave “as” em alguns dos comandos na tabela 4
um campo. Por exemplo, sum(price) as “Revenue” significa que
ele tem que adicionar todos os campos price e nomear a coluna resultante como
37
calcula as estatísticas agregadas sobre um dataset, similar a uma
agregação em SQL. A tabulação resultante pode conter uma linha, que representa a
agregação de todo o grupo de resultados, ou uma linha para cada valor distinto
fazem os mesmos cálculos estatísticos nos seus dados, mas retornam
grupos de resultados diferentes para permitir que você possa conseguir os resultados
retorna uma tabela de resultados onde cada linha representa uma
retorna a mesma tabela de resultados, com as linhas como os
retorna os mesmos resultados tabulados, mas a linha é colocada
, que te permite organizar o seu gráfico por períodos de
la 4-14. O as é
significa que
e nomear a coluna resultante como
51. A tabela 4-8 mostra exemplos do uso do comando
Tabela 4-8. Exemplos do comando stats
O terceiro exemplo na tabela 4
por host, é ilustrado na figura 4
Figura 4-7. Exemplo de comando stats
A tabela 4-9 lista funções estatísticas que você pode usa
funções também podem ser usadas com os comandos
discutir depois)
8 mostra exemplos do uso do comando stats.
stats
O terceiro exemplo na tabela 4-8, recuperando o número de pedidos de GET e POST
por host, é ilustrado na figura 4-7.
stats
9 lista funções estatísticas que você pode usar com o comando stats
funções também podem ser usadas com os comandos chart e timechart,que nós vamos
38
8, recuperando o número de pedidos de GET e POST
stats. (Estas
,que nós vamos