Artigo do tipo Tutorial
Recursos especiais neste artigo:
Conteúdo sobre boas práticas, Artigo no estilo Curso Online
Splunk: Monitorando em tempo real os elementos da TI – Parte 2
Neste artigo colocaremos a mão na massa com um tutorial prático onde o leitor poderá explorar todo o potencial do Splunk para monitoramento da TI de uma empresa com base em dados de máquina. Extrair valor de logs e fazer com que a infraestrutura de uma empresa tenha menos problemas com downtime, por exemplo, são alguns dos pontos que fazem do Splunk uma plataforma única no mundo.


Em que situação o tema é útil
Imagine que você precisa de uma ferramenta para consolidar logs de várias máquinas servidoras em uma só e, através de uma interface prática, analisar os problemas que vêm acontecendo relacionados com a compra de um produto em sua plataforma de e-commerce. Ou mesmo, imagine ter vários servidores Linux/Unix/Windows remotos, sendo necessário consolidar todos os logs dos ativos de TI para investigação de erros ou até ameaças de segurança. A possibilidade de investigar problemas e responder a eventos que impactam o funcionamento do seu ambiente fazem do Splunk uma plataforma de Big Data ideal para análise de toda a sua infraestrutura de TI.

Não basta somente querer monitorar o ambiente e obter respostas em tempo real, é necessário que o departamento de TI das empresas tenha as pessoas certas e a ferramenta de coleta e análise de informação mais adequada para que o trabalho seja realizado. Muitas são as empresas que têm interesse em entrar para o mundo da análise de dados e ter suas decisões baseadas em números ou fatos, e é isso que o Splunk pode entregar, desde que a equipe de TI dê ao pessoal de negócios o apoio necessário para coletar os dados certos, disponibilizar um software para que analistas de infraestrutura possam analisar dados e extrair de lá, do Big Data, as respostas às perguntas do dia a dia. O mais interessante é que com o Splunk é possível conseguir respostas em segundos ao invés de dias, o que acontece com empresas que ainda tocam grandes Data Warehouses.

Analisar através de gráficos os pacotes que trafegam em redes, roteadores e switches, ou ainda fazer o monitoramento de servidores Windows, Unix e Linux, é parte do que o Splunk lhe dará possibilidade de fazer com poucos cliques. Deste modo, demonstraremos neste artigo algumas das funcionalidades do Splunk na prática.

Iniciando o Splunk

O primeiro passo para iniciarmos com o Splunk é acessar o site do produto e fazer o download da plataforma. Quando estiver na tela de download, perceba que você poderá selecionar o arquivo a ser baixado de acordo com a arquitetura da máquina, 32 ou 64 bits, e com o sistema operacional que esta roda. Mais a frente serão listados os sistemas operacionais suportados, mas, neste momento, selecione e baixe o arquivo adequado e faça a instalação do Splunk. Para sistemas operacionais Microsoft, a instalação segue o modelo NNF (Next-Next-Finish), enquanto que para SOs Unix-like, basta descompactar o arquivo “tar.gz” ou “.zip” no diretório /opt.

Feita a instalação, precisamos então iniciar o Splunk e trocar as credenciais que vêm configuradas por padrão (usuário admin e senha changeme). Para usuários de Windows, é mais fácil iniciar os serviços do Splunk (Splunkd e Splunkweb) a partir do painel de serviços. No Mac ou Linux, é necessário utilizar a linha de comando para iniciar, parar, reiniciar ou checar o status atual dos serviços do Splunk, o que é demonstrado nas Listagens 1 e 2.

Listagem 1. Iniciando o Splunk na linha de comando com MAC.


  # Mac – iniciando o Splunk pela primeira vez
  localhost:~wbianchi$ splunk start --accept-license
   
  Splunk> See your world. Maybe wish you hadn't.
   
  Checking prerequisites...
  Checking http port [8000]: open
  Checking mgmt port [8089]: open
  Checking configuration... 
  Done.
   
  Checking index directory...
   
  Validated databases:
   _audit _blocksignature _internal _thefishbucket history main summary
   
  Done. 
   
  Success.
   
  Checking conf files for typos...
   
  All preliminary checks passed.
  Starting splunk server daemon (splunkd)...
  Done.
  Starting splunkweb... 
  Done.
   
  If you get stuck, we're here to help.
  Look for answers here: http://docs.splunk.com/Documentation/Splunk
  The Splunk web interface is at http://localhost:8000

Listagem 2. Iniciando o Splunk na linha de comando com Linux-Unix.


  # Linux – iniciando o Splunk pela primeira vez
  root@localhost:~# /opt/splunk/bin/splunk start --accept-license
  splunkd 3997 was not running.
  Stopping splunk helpers...
  Done.
  Stopped helpers.
  Removing stale pid file... done.
   
  Splunk> Be an IT superhero. Go home early.
   
  Checking prerequisites...
  Checking http port [8000]: open
  Checking mgmt port [8090]: open
  Checking configuration... 
  Done.
   
  Checking index directory...
   
  Validated databases: _audit _blocksignature
 _internal _thefishbucket history main summary
   
  Done.
   
  Success.
   
  Checking conf files for typos...
   
  All preliminary checks passed.
  Starting splunk server daemon (splunkd)...
  Done.
  Starting splunkweb... 
  Done.
   
  If you get stuck, we're here to help.
  Look for answers here: http://docs.splunk.com/Documentation/Splunk
   
  The Splunk web interface is at http://localhost:8000

Note que tanto no Linux quanto no Mac utilizamos a flag --accept-license para aceitar a licença e evitar que todo o texto da licença seja exibido no terminal. Ao final da saída do comando de start, perceba que já é informado o endereço para ser acessado via browser para então fazermos o primeiro login em nossa instalação do Splunk. Para verificar se o processo ou serviço está realmente ativo, utilize a opção status, como exibido na Listagem 3.

É interessante, em qualquer tipo de sistema operacional que for utilizado, configurar o diretório “Bin” (splunk/bin) da instalação do Splunk na variável PATH para que se tenha mais agilidade ao trabalhar com a plataforma na linha de comando. Vale ressaltar que muito do que faremos com a interface web (SplunkWeb) podemos fazer via linha de comando.

Listagem 3. Exibindo o status atual da instância do Splunk.


localhost:~ wbianchi$ splunk status
  splunkd is running (PID: 1132).
  splunk helpers are running
(PIDs: 1168 1169 1177 1178 1179 1180 1361).
  splunkweb is running (PID: 1148).

Após o primeiro login no Splunk, o usuário será convidado a trocar a senha atual do usuário admin para uma senha mais segura. Inicialmente a senha é “changeme”, como já informado, mas uma vez acessado você poderá colocar aquela que desejar. Após efetuar a troca da senha, seu browser será levado à tela de welcome. Na parte inferior da página, o usuário já poderá clicar em “default app” para fazer as primeiras configurações, como colocar o seu nome em vez de utilizar o nome Administrador, definir o timezone no qual você está inserido e definir, dentre os aplicativos padrão Splunk, qual será aquele que será aberto após fazer login com o seu usuário.

Após fazer as alterações, clique em logout e efetue login novamente para verificar se o nome que você configurou já foi adotado pelo Splunk. Este aparecerá no menu superior, na parte direita da tela.

Colocando a mão na massa

Como já abordado neste artigo, o Splunk é uma plataforma universal de dados de máquina que possibilita a coleta e a indexação dos dados, estejam eles onde estiverem. É possível coletar desde dados locais até dados localizados remotamente, como em uma mesma LAN ou WAN. Se os dados não estiverem na máquina local onde está instalado o Splunk, podemos instalar o Universal Forwarder para coletar os dados e enviá-los automaticamente para uma instalação ou instância de Splunk central. Isso ajuda a centralizar o monitoramento a partir da análise dos dados de todos os softwares que suportam os serviços oferecidos pela TI de uma empresa, independentemente de onde estiverem tais softwares.

Em um cenário mais simplista, ou seja, “começando pelo começo”, nesta parte do artigo teremos uma prática pela qual buscaremos explicar a indexação de dados com o Splunk. Vamos criar um índice exclusivo onde serão indexados os dados, buscar uma fonte de dados, investigar e buscar por ocorrências nos dados, criar painéis com relatórios e gráficos e finalizar com a criação de alertas. Isso nos dará um overview geral das capacidades técnicas para se trabalhar com o Splunk, além de passarmos pelas principais features que o produto oferece. Para criação deste cenário, o leitor precisará fazer o download dos arquivos de logs de exemplo que estão compressos em um zip chamado Sampledata.zip, disponível na documentação online do Splunk (veja a seção Links). Após baixar o arquivo, posicione-o em um diretório de fácil acesso para trabalharmos com ele dentro do Splunk.

Conhecendo e criando um novo índice

Como citamos anteriormente, e precisamos somente recordar neste tópico, o Splunk armazena os dados de máquina coletados em buckets que fazem parte de índices. Estes índices são mantidos pelo próprio Splunk em uma estrutura denominada MapReduce, que paraleliza as consultas aos dados fazendo com que a performance seja muito superior a muitos sistema de armazenamento de informação existentes.

Por padrão o Splunk apresentará alguns índices para armazenamento de metadados criados automaticamente no processo de instalação. Os índices padrões do Splunk para armazenamento de metadados e dados são os seguintes:

· summary: índice interno utilizado para armazenar consultas que manipulam grandes volumes de dados. O resultado é armazenado nesse índice para auxiliar na recuperação dos dados quando a mesma consulta for executada pela segunda vez. Se comprarmos com um banco de dados, seria este um sistema de cache de resultados vinculado às consultas, ora denominado Summary Indexing. Os arquivos do índice de sumário estão localizados em $SPLUNK_HOME/var/lib/splunk/summary;

· _internal: de longe, um dos índices mais interessantes do Splunk, pois fornece várias possibilidades, como verificar as métricas de processamento, a atual fila de consultas, violações de licenças, informações de DEBUG, etc. Os arquivos do índice _internal estão localizados em $SPLUNK_HOME/ var/lib/splunk/_internaldb;

· _audit: este índice contém informações sobre auditoria de processos, histórico de alterações no sistema de arquivos e um histórico de consultas do Splunk. Os arquivos deste índice estão localizados em $SPLUNK_HOME/var/lib/splunk/audit;

· _thefishbucket: índice que contém informações sobre os arquivos que vêm sendo acessados pelo Splunk para escrita de dados e leitura dos mesmos. Este índice está localizado em $SPLUNK_HOME/var/lib/splunk/fishbucket;

· main: índice padrão para onde vão todos os dados quando o administrador ou usuário Splunk não especifica um índice exclusivo para uma nova fonte de dados (especificar um índice exclusivo para cada nova fonte de dados adicionada ao Splunk é parte do manual de boas práticas). É também chamado de defaultdb (no sistema de arquivos) e está localizado em $SPLUNK_HOME/var/lib/splunk/defaultdb/db.

Os índices internos do Splunk que têm nomes que iniciam com underline são índices que armazenam informações de processamento do próprio Splunk, tais como auditoria de processos, histórico de consultas, histórico de alertas e violações de licenças. Já o índice main, que também é criado no momento da instalação, é o índice padrão do Splunk para dados de usuário.

É interessante criar um novo índice sempre que um tipo de informação diferente for adicionado ao Splunk. Os índices são como apontadores para os dados que estão armazenados em estruturas denominadas buckets, e estes, por sua vez, estão organizados sobre o disco da máquina onde roda o Splunk.

Para criarmos um novo índice, de maneira simplificada, podemos seguir por duas vias: pelo Splunk Manager ou pela linha de comando (ver Listagem 4).

Listagem 4. Criando um novo índice na linha de comando.


root@splunk01:~# splunk add index splunkbr      # commando simples
  Index "splunkbr" added.

Veja os passos para criação do índice via Splunk Manager:

1. Faça login no Splunk com o usuário admin e a senha que configurou;

2. Acesse o menu Manager no canto superior direito;

3. Acesse o link Indexes, no agrupamento de menus Data;

4. Na tela que são listados todos os índices que sua instância Splunk possui, clique em New;

5. No campo Index name, informe o nome splunkbr;

6. Clique em Save.

Após clicar em Save, o browser será retornado à lista de índices que a instância Splunk possui. Nesse momento podemos verificar que o nosso índice foi realmente criado, uma vez que é parte da lista exibida na tela atual. Outra forma de listar o índice criado é via linha de comando, o que pode ser verificado na Listagem 5.

Listagem 5. Listando o índice que acabamos de criar.


root@splunk01:/# $SPLUNK_HOME/bin/splunk list index | grep splunkbr
  splunkbr
       /opt/splunk/var/lib/splunk/splunkbr/db
       /opt/splunk/var/lib/splunk/splunkbr/db
       /opt/splunk/var/lib/splunk/splunkbr/db

No tópico anterior, foi solicitado ao leitor que fizesse o download de um arquivo contendo vários logs. Nesse arquivo existem logs de três servidores Apache e logs de uma instância MySQL. O processo de adição de dados ao nosso Splunk então se inicia quando, a partir da Home do Splunk, clicamos em Add Data e selecionamos a opção Files & Directories. A opção Skip Preview poderá ser selecionada, seguindo com Upload and Index a file, já que temos arquivos estáticos. É nessa tela que vamos selecionar o índice que será utilizado para armazenar tais dados. Os passos para adicionar dados ao Splunk estão descritos a seguir:

1. Na Home do Splunk, clique em Add Data;

2. Clique na opção Files & Directories;

3. Clique em Next na opção Consume any files on this Splunk Server;

4. Marque Skip Preview e Continue;

5. Na tela seguinte, selecione a opção Upload and index a file;

6. Clique no botão Browse para selecionar o arquivo “Sampledata.zip”;

7. Clique em More settings;

8. No campo Set host, selecione o valor “regex on path”;

9. No campo Regular expression, informe a seguinte expressão regular, de acordo com o sistema operacional que está trabalhando:

Linux: Sampledata.zip:./([^/]+)/

Windows: Sampledata.zip:.\\([^/]+)/


10. Em Set the destination index, selecione splunkbr, que é o índice que criamos.

11. Clique em Save.

A tela seguinte, logo após clicar em Save, já lhe dará a opção de iniciar as buscas por dados que estão, nesse momento, sendo indexados pelo Splunk. Além disso, a Search App, que é o aplicativo padrão do Splunk, nos dará um sumário de todos os eventos e padrões já indexados e encontrados, respectivamente, pelo Splunk. Clique no link Start Searching e vamos em frente.

Search App e a SPL (Search Processing Language)

Por meio da Search App, o administrador do Splunk já conseguirá ter um sumário do que está sendo indexado no Splunk. À primeira vista já é possível avistar um campo de busca que é reconhecidamente um Google para o lado interno da TI, no qual você pergunta por determinados termos e o Splunk lhe trará todos os eventos que tenham aquela dada string.

Esta App conta com três áreas de sumário muito importantes, que são Source, que se refere ao arquivo que foi ou está sendo indexado (path + arquivo), o sourcetype, que é o tipo de informação que o Splunk está indexando e foi identificada pelo próprio Splunk, e hosts, que é nome do host onde reside o arquivo que está sendo indexado pelo Splunk. Estes três fields estarão presentes em qualquer fonte de dados que for indexada no Splunk, sendo que eles também podem ser utilizados para efetuar buscas.

Um exemplo interessante para ser explorado nesse momento é justamente o de clicar sobre o link apache1.splunk.com, localizado em hosts. Após clicar, o Splunk iniciará uma busca pelos eventos que tenham sido originados pelo host apache1.splunk.com, e exatamente 9.199 linhas devem ser retornadas.

Percebam que, agora, no campo de busca, temos uma consulta por host igual ao nome do host que clicamos no sumário hosts. Perceba também que do lado esquerdo da tela surgiram os fields, estruturas que armazenam as informações que foram identificadas no processo de indexação e também de consulta (a cada consulta pode ser que um novo field seja descoberto!).

Os fields podem ser utilizados para buscar dados. Por exemplo, digamos que, nesse contexto, em que estamos trabalhando com dados de máquina que se referem aos logs de acesso do Apache, o administrador queira saber se existem erros de status 503 acontecendo durante a operação. Se percorrermos os fields atualmente descobertos pelo Splunk, será fácil achá-lo. Se ele já foi descoberto pelo Splunk, podemos simplesmente escrever uma consulta conforme a Listagem 6.

Listagem 6. Consulta por erro de status 503 em um servidor Apache.


host="apache1.splunk.com" status=503
  15 matching events

Vale salientar que existe um AND implícito entre a primeira e a segunda cláusula da consulta da Listagem 6, ou seja, queremos recuperar o host igual a apache1.splunk.com onde também haja status igual a 503. Nesse ponto, podemos ainda explorar um pouco mais a Search App para criar uma consulta que nos dê uma posição da quantidade de erros de status 503 (Service Unavailable) que vêm acontecendo em todos os hosts nos quais o Splunk vem coletando os logs do Apache e os indexando. Para isso, precisamos modificar a consulta da Listagem 6 e colocá-la conforme a Listagem 7, onde utilizamos o comando stats e apontamos que queremos buscar dados somente no índice que criamos, o splunkbr (lembra?).

Listagem 7. Consulta por erro de status 503 nos servidores Apache.


index=splunkbr status=503 | stats count by host
  15 matching events 

Após rodar a consulta da Listagem 7, podemos perceber que estamos chamando o índice criado anteriormente com a presença do sinal pipe “|”, que funciona como no Linux/Unix, direcionando o resultado da primeira consulta para a segunda. Nos resultados da consulta, vemos que somente o Apache do servidor apache1.splunk.com tem problemas com status 503 (Service Unavailable), o que nos coloca em uma posição mais proativa em relação aos problemas que possam estar acontecendo com este software, naquele servidor. Neste ponto vale lembrar o que no primeiro artigo discutíamos sobre os profissionais que por uma ou várias horas estariam engajados em achar os problemas decorrentes de uma parada nos serviços de tecnologia nos arquivos de logs, ou melhor, nos arquivos de logs dos vários softwares espalhados por vários servidores.

Com o Splunk é possível centralizar toda a informação de várias máquinas e obter as respostas para perguntas como: “desde quando nosso serviço tem falhado?” ou “quantas vezes nosso serviço falhou hoje?”.

O Time Range Picker, localizado ao final do campo de busca, permite ao usuário da Search App ajustar o intervalo de tempo sobre o qual se deseja fazer as pesquisas e investigações. É possível buscar dados em vários intervalos pré-definidos, sendo que o usuário ainda poderá personalizar o intervalo no qual busca por informações, clicando em custom e selecionando dados de um período específico. Para listar os períodos suportados pela ferramenta, basta clicar no botão do Time Range Picker. Na Listagem 8 realizamos uma busca agrupando os status pela quantidade que cada um deles ocorreu ao longo do arquivo de log de acesso do servidor Web Apache. Perceba que, como temos três servidores Apache sendo monitorados, os erros de todos eles são agrupados em um só resultado. A Figura 1 apresenta o resultado da consulta da Listagem 8.

Listagem 8. Consulta por ocorrência de status nos logs dos servidores Apache monitorados.


index=splunkbr
  | stats count by status 
  | rename status as ReqStatus 
  | rename count as ReqQtd 
  | sort –ReqQtd

abrir imagem em nova janela

Figura 1. Resultado da consulta da Listagem 7.

Na consulta da Listagem 8, como pode ser observado, utilizamos o comando rename para criar um apelido para as colunas do resultado.

Um livro com a referência completa da linguagem de consulta utilizada no Splunk, de nome SPL ou Search Processing Language, pode ser baixado gratuitamente. Veja o endereço para isso na seção Links.

Outro exemplo interessante de comando que pode ser utilizado em consultas a dados no Splunk, ainda quando buscamos agrupar dados, é o top. Este comando agrupa as ocorrências de um determinado dado (em nosso exemplo utilizaremos o campo status) de acordo com o contexto atual e nos traz uma coluna adicional que informa o percentual de ocorrência de cada status. A coluna percent é adicionada automaticamente ao resultado. Veja na Listagem 9 um exemplo da utilização do comando top, e na Figura 2 o seu resultado.

Listagem 9. Consulta com o comando top.


index=splunkbr
  | top status 
  | sort –status


abrir imagem em nova janela

Figura 2. Resultado da consulta da Listagem 8.

Todas as consultas realizadas neste tópico, exibidas nas Listagens 6 a 9, ainda podem ser executadas na linha de comando, chamando o programa client splunk e executando a consulta, como exibido na Listagem 10. As cláusulas search e rtsearch podem ser utilizadas para se consultar utilizando a CLI e representam respectivamente uma busca simples e uma busca por dados em tempo real.

Listagem 10. Consultando dados utilizando a linha de comando.


$ splunk search ‘index=_internal | stats count’
  #
  Preview of: index=_internal | stats count
  count
  ------
  562490

Criando Dashboards

Este é um dos pontos máximos da entrega de valor do Splunk. Após entrar com as consultas, aquelas que praticamos nas listagens anteriores, o administrador terá a oportunidade de gerar relatórios baseados em gráficos para tornar o processo de análise dos dados ainda mais inteligível.

Tudo começa na Search App, onde, após escrever uma consulta e visualizar os resultados, teremos a possibilidade de visualizar dois botões, ambos localizados logo abaixo do campo de busca, sendo um deles denominado Create. Ao clicar neste botão serão verificadas algumas opções de criação de objetos Splunk, como Dashboard Panel, Alert, Report, entre outros.

Nesse momento, já passada a busca de dados, vamos nos ater aos relatórios que criaremos em forma de gráficos. O processo aqui é simples. Uma vez que a consulta é escrita e os resultados já estejam sendo exibidos na área de resultados, basta clicar no botão Create e, em seguida, em Dashboard Panel. Assim que um novo Dashboard Panel é criado, ele pode contar com vários gráficos, os quais o administrador do Splunk poderá separar por áreas da empresa. Estes gráficos também são conhecidos por painéis.

Imaginemos então que precisamos exibir um gráfico em cima dos resultados da consulta da Listagem 8, aquela que exibe a quantidade de erros de status 503 dos servidores Apache que estamos monitorando. Como estamos utilizando os dados de exemplo que baixamos da documentação online do Splunk, estamos consultando os mesmos dados. Voltando ao Splunk, execute os passos a seguir para geração do primeiro Dashboard Panel que conterá um gráfico baseado na consulta da Listagem 8:

1. Entre com a consulta da Listagem 8 no campo de busca de dados, na Search App;

2. Após executar a consulta, clique no botão Create, localizado no canto direito da tela, logo abaixo do final do campo de busca;

3. Nesta primeira tela, informe o nome da consulta “ErrorByHost” no campo Name. Feito isso, clique em Next;

4. Selecione a opção New dashboard Name e informe o nome “MyFirstDashboard”. Novamente, clique em Next;

5. Na terceira tela do Wizard, altere o campo Visualization para Column e clique em Next mais uma vez;

6. Na quarta e última tela, teremos a oportunidade de clicar sobre o link com o nome que demos ao nosso painel de gráficos no passo 4, MyFirstDashboard, e então visualizá-lo. Veja na Figura 3 como ficou este painel.

abrir imagem em nova janela

Figura 3. Painel de gráficos e o gráfico que criamos com a consulta da Listagem 8.

Este processo de criação de gráficos que reportam respostas a perguntas internas ou externas de uma empresa com base nos dados de máquina pode ser realizado da forma como fizemos ou ainda salvando as consultas e adicionando-as aos painéis. Mas para que este artigo não fique tão longo e/ou cansativo, tal processo será mostrado em um próximo artigo.

Criando alertas

Para finalizar a apresentação do produto, precisamos abordar os alertas, que são, na visão de muitos dos clientes que o Splunk tem no mundo, um tópico de bastante importância, uma vez que se trata da facilidade que o Splunk apresenta de alertar usuários a partir do envio de e-mails, execução de scripts ou, ainda, na recente versão 5.0 do Splunk, o envio de relatórios personalizados no formato PDF. Este recurso é muito valioso, pois, numa situação em que seu supervisor precisa de um relatório de estoque ou da quantidade de transações realizadas em um sistema todas as manhãs e tardes, por exemplo, basta escrever uma consulta para recuperar os dados que ele precisa visualizar e, em seguida, criar um alerta sobre tal consulta, programando o envio deste alerta no formato PDF diretamente para o e-mail do seu supervisor.

Da mesma maneira como criamos um painel de gráficos ou Dashboard Panel, a partir do mesmo menu temos a oportunidade de criar os alertas, que seguem o mesmo padrão de criação. Após escrevermos a consulta da Listagem 6, a qual nos traz as ocorrências do erro de status 503 no servidor apache1.splunk.com, criaremos um gráfico para nos alertar sempre que um erro dessa natureza for retornado como resultado da consulta.

Ao escrever a consulta no campo de busca, atente-se às sugestões que são disponibilizadas pelo Splunk logo abaixo deste campo. Após executar a consulta e visualizar os resultados, clique no botão Create e selecione a opção Alert. Feito isto, um Wizard será aberto e iniciaremos a implementação de um alerta, cujo processo é apresentado a seguir:

1. Na primeira tela do Wizard, dê o nome “MyFirstAlert” ao seu alerta e clique em Next;

2. Na segunda tela, teremos a oportunidade de configurar o envio de e-mail (marcando a opção Send email) e rodar um script, que deverá estar armazenado em $SPLUNK_HOME/bin/scripts/ (marcando a opção Run a script). Feito isto, preencha o campo com um script teste chamado “echo.sh” e clique em Next;

3. Na terceira tela, clique em Finish.

Terminados esses passos, o seu primeiro alerta sobre a análise dos dados retornados pela consulta da Listagem 6 estará criado. Um ponto interessante é que, caso esse erro aconteça muito em produção, você ainda poderá utilizar a opção throttling para adormecer os alertas por x segundos, minutos ou, ainda, horas, para que o problema possa ser resolvido e a caixa de e-mails do pessoal não vire mais um problema. Ao disparar e-mails como alertas podemos ainda enviar os resultados de uma consulta anexados nos formatos “.pdf” ou “.csv”, ou ainda colocar a consulta e o resultado no corpo do e-mail (inline).

Conclusão

Neste artigo sobre o Splunk, foi feito um overview geral da solução Splunk para o monitoramento de TI de uma organização, independentemente do seu tamanho: pequena média ou grande. O Splunk é uma solução que oferece um framework com vários tipos de soluções e que ainda suporta o desenvolvimento de novas Apps sem necessidade de ferramenta terceira adicional. Ainda, oferece uma API chamada REST, que permite que as linguagens PHP, Python, Java e JavaScript sejam utilizadas para a criação de extensões do Splunk – seja para um tratamento adicional dos dados, seja para implementação de novos templates para deixar o Splunk com a cara da sua empresa.

Links

Exploring Splunk
http://www.splunk.com/goto/book

Documentação do Splunk
http://docs.splunk.com/Documentation

Download do arquivo de logs (Sampledata.zip)
http://tinyurl.com/bgmkod3

Site oficial Splunk em português
http://pt.splunk.com

Splunk Processing Language Book
http://www.splunk.com/goto/book