Este documento descreve o uso da Splunk na empresa VTEX para gerenciar logs e métricas de mais de 1000 clientes. A VTEX começou usando a Splunk para armazenar 2GB de dados, e agora armazena 65GB para fornecer insights que melhoram a tomada de decisão. A Splunk permite monitorar o desempenho, identificar anormalidades e aumentar a conversão.
2. 2
Agenda
Sobre a VTEX
Desafios e Iniciativas
VTEX e seu uso inicial do Splunk
Gerenciamento do cluster
Splunk Apps da VTEX
Presente/Futuro: VTEX Analytics
3. 3
• A VTEX é líder em tecnologia para e-commerce e pioneira na
comercialização de software como serviço (SaaS) no Brasil. Suas
soluções atendem lojas virtuais independente do volume de clientes e
do segmento de negócio, tudo com selo PCI Certified
Mais de 1000 clientes ativos, 15 países, 150 funcionários,
80 desenvolvedores
300 milhões de requests/dia entre sistemas (95% < 200ms)
2.0k de métricas por segundo / 300 logs por segundo
4. 4
Fábio Caldas
Formado em Ciências da Computação – Turma 2005 UCP
Programador .Net C# apaixonado
Splunk Administrator / User
5. 5
Hardware Dados de negócios
Logs
Realidade vs Necessidade
Métricas
Aumento de
Conversão
Identificação de
anormalidades
Uma mãozinha
com os futuros
indicadores
Análises
Departamentais
6. 6
Como começou
Gerenciamento de LOGS
Como poderiamos logar e ver nossos logs?
Como criar um ambiente central para todos os logs da empresa de fácil
manutenção?
7. 7
VTEX
Início (2 Gb)
– Apenas logs de erros
– Quase sem métricas
– Necessidade: Otimização das mensagens
Meio (65 Gb)
– Logs de erro, warn, info, audit
– Métricas de +90% dos sistemas
– Necessidade: Uso do Data Model
Atualmente (65 Gb):
– Dados auxiliando tomada de decisão do gestor do eCommerce
8. 8
Splunk – Controle sobre indexação
Uso dos arquivos conf: props / transforms
– Props
– Transforms
27. 27
And NOW?
• Splunk App criada com foco no cliente
• Funções:
• Dar visibilidade near-realtime
• Fornecer dados para suporte de decisões
Atualmente possui:
• Acompanhamento de estoque
• Acompanhamento de usuários e load de páginas
Explicação rápida da VTEX e sua relevância na América Latina
Em uma realidade onde temos dados de máquina, logs de aplicação e métricas sendo geradas, precisamos transformar tudo isso em dados de negócios com foco em aumento de conversão
Lembrar que no começo o foco era gerenciamento de logs
Explicar como foi o processo de uso e o foco atual
Ilustrar uso do controle sobre dados indexados feito com os arquivos props e transforms conf. Com isso obtivemos uma redução de 50% do tamanho do evento indexado
Exemplo de evento no Splunk representando um log e uma métrica
Já no Splunk 6.2 os dados foram escritos diferentes para economizar quota de indexação mas isso só foi possível graças ao novo extrator de campos
Com a chegada do novo extrator de campos ficou bem mais fácil e rápido obter campos dos eventos
O controle do cluster é feito na máquina master. Pode-se ver que no início existia um preocupação com a perda de dados (replicação) mas não com a disponibilidade dos dados
Com a adoção cada vez maior por parte dos usuários e para garantir que alertas críticos continuem funcionando a infra foi re-ajustada
Vale destacar que para gerenciar o cluster de Splunk é muito fácil (ainda mais no 6.2 com o novo DMC)
Mas sempre vale a pena ter o SOS para entender mais afundo os cenários
E para o caso específico no gerenciamento dos dados em HD recomendo o Utilization Monitor for Splunk (SUM)
Toda a infra está dentro do AWS Opsworks com uma máquina manager, uma viewer (acesso geral), uma viewer mobile (yes temos mobile) e as máquinas de indexação que são escaláveis
Nesses anos usando Splunk na AWS achei um bom modelo de máquinas pra suportar a necessidade. Além disso vale frisar a importância de deixar o HD primário como RAID 1+0 pois aumenta demais a velocidade de escrita e aconselhar o uso de um HD grande para suportar as pastas de dispatch
Em relação ao controle de acesso hoje ainda é um ponto fraco uma vez que os usuários precisam ser cadastrado no Splunk ou em LDAP, mas as coisas estão melhorando com a futura integração SAML v2
Antes de entrar para mostrar alguns dashboards vale a pena dar uma rápida passagem no parque de apps Splunk da VTEX
São mais de 60 apps entre o cluster Splunk 6.0 e o cluster Splunk 6.2, sendo que cada serviço/aplicação tem sua app e seu index. Além disso todo o trabalho de criação de dashboards/reports/alarmes são de responsabilidade do time que está utilizando
Começando agora a demonstrar os cases da VTEX
O foco da VTEX agora é desenvolver mais dashboards no VTEX Analytics de forma a ampliar a gama de dados disponível ao nosso cliente/gestor