Realtime Logging Aggregation com Logstash e AngularJS

  • avatar Cesar William Alvarenga
    I'm a professional who enjoys working with innovation and doing things with performance. My motivation is work with innovative projects, giving presentations and do research and development. I'm expert in front-end development and I also have a good experience and skills in back-end development.
  • avatar Emílio Carvalho Dias
    Arquiteto de Softwarer na Algar Telecom e especialista em Segurança da Informação. Portador da certificação SCJP e ampla experiência em desenvolvimento Java EE, Entrega Contínua, middlewares VoIP e serviços de telefonia. Certificado LPI 1 e aprovado na prova 201 da certificação LPI 2. Já realizou diversas contribuições para projetos open-source de telecomunicações.
O tratamento adequado de logs gerados por um software é algo de extrema importancia, provendo a visibilidade necessária sobre o comportamento do mesmo. Apesar disto, nem todos levam a sério uma abordagem bem elaborada para o tratamento de suas informações. Em ambientes distribuidos, a correlação entre eventos se torna um desafio ainda maior, visto que os registros das informações estão espalhados por uma série de equipamentos. Desta forma, esta apresentação tem como objetivo apresentar uma arquitetura que possibilite a agregação e processamento de logs em realtime a partir de ferramentas como Scribe, Logstash e Elasticsearch. A idéia principal é demonstrar aos participantes a maneira ideal para combinação de ferramentas para coleta (Scribe), processamento(Logstash e Elasticsearch) e visualização dos dados (Kibana e AngularJS). Será demonstrado uma aplicação Java que utiliza o framework Log4j para geração de eventos e com o Scribe iremos demonstrar a coleta e centralização destes, fornecendo ao Logstash as informações necessárias para serem processadas e indexadas no Elasticsearch. Com os dados indexados, faremos uso da ferramenta Kibana, para criação de dashboards customizaveis, uma boa maneira de gerar valor ao negócio. Além disso, será apresentado como é possivel desenvolver sua própria interface web utilizando o framework AngularJS através de uma API fornecida pelo Elasticsearch.