-
Alexandro Lopes authoredea6c4220
Log Distribuído com Serilog + Seq
Como parte da solução de log distribuído, iremos fazer uso do Serilog como componente para escrita dos logs, do Audit NET para capturar dados da requisição (header, request body e etc) e do Seq que pode ter a documentação acessada nesse link.
Abaixo, mais detalhes sobre cada componente:
Serilog
E um componente, tal como NLog
para escrita de logs utilizando arquivos de configuaração e uma sintaxe simples de ser utilizada e entendida, como pode ser obeservado na documentação.
Audit NET
Componente que pode ser utilizado em aplicações MVC e WebAPI, tanto para aplicações com .NET Framework com versão 4.5.1 em diante, como para aplicação .Net Core.
Utiliza o recurso de filtros do ASP.NET para recuperar alguns dados da requisição que podem ajudar na análise dos logs.
Seq
Aplicação que armazena dados de log e permite visualizar e pesquisar logs, criar filtros personalizados, dashboards, alerts, etc e totalmente integrada com o Serilog
.
Visão geral do Seq
Como podemos ver no diagrama abaixo, o Seq
é o centralizador das informações de log onde diversas apliciações podem utilizá-lo para gerar e visualizar os logs.
Arquitetura de Solução
A proposta de arquitetura é permitir que qualquer aplicação, dentre os diversos nodes (ou único node) possa gerar e consumir logs de uma infraestrutura distribuída.
Agora que já exploramos de uma forma geral toda a solução, vamos entrar nos detalhes da implementação/instalação de cada componente.
Change Log
Informações sobre alterações e releases estão referenciadas no change log