Problema

Os sistemas geram logs muito volumosos, de difícil análise e administração, tornando complexa a gestão por parte do cliente.

Para contornar limitações de espaço em disco, normalmente o cliente precisa manter os logs em nível baixo de detalhes, rotacionar e até elimina-los com alta frequência, podendo perder informações importantes para solução de problemas.

Cenário comum: o cliente abre chamado reportando um problema, porém não tem o log detalhado; com isso recebe orientação para aumentar o nível de log e provocar o problema novamente, e isso nem sempre é factível, especialmente em problemas mais graves, como queda de serviços.

É importante termos uma forma mais robusta de armazenar logs recentes sem comprometer a operação.


Solução proposta

Definir uma configuração para possibilitar gerenciamento ativo dos logs gerados pelo sistema, que possa ser implantado pelo próprio cliente na sua estrutura e utilizado para agilizar análises, consultorias, atendimentos de suporte e situações relacionadas.


Setup

Esta documentação demonstra o setup que já utilizamos internamente e recomendamos aos clientes. Reforçamos que esta não é a única solução que existe nem a única forma de fazer. Aqui tivemos a intenção de definir uma solução simples e 100% utilizando sofrware livre. O cliente pode ficar à vontade para experimentar outros tipos de ferramentas.


setup que propomos utiliza 3 ferramentas que fazem parte do Elastic stack:


Requisitos de hardware

Descrevemos aqui a configuração que estamos utilizando internamente para os ambientes de desenvolvimento. Cenários de produção dos clientes podem demandar de configurações diferentes, especialmente no quesito Disco, dependendo do volume de logs e quantidade de tempo que desejar armazená-los.


Passo a passo para a instalação

1. Elasticsearch

Vamos começar pelo banco de dados, que é a parte mais importante de todo o stack.