Graylog: Utilizar com Dot NET
Como enviar logs de .NET/Serilog para Graylog
👋 Bem-vindo à documentação da Stackhero!
A Stackhero oferece uma solução Graylog cloud pronta a usar que proporciona uma série de benefícios, incluindo:
- Servidor de email SMTP ilimitado e dedicado incluído.
- Atualizações sem esforço com apenas um clique.
- Nome de domínio personalizável seguro com HTTPS (por exemplo, https://logs.sua-empresa.com).
- Desempenho ótimo e segurança robusta alimentados por uma VM privada e dedicada.
Poupe tempo e simplifique a sua vida: são necessários apenas 5 minutos para experimentar a solução Graylog cloud hosting da Stackhero!
Serilog é uma biblioteca de logging muito popular e altamente extensível, amplamente utilizada para a gestão de logs em aplicações .NET. Permite aos programadores configurar vários sinks para armazenamento e visualização de logs.
Aqui está um exemplo básico que demonstra a utilização do Serilog:
var log = new LoggerConfiguration()
.WriteTo.Console()
.WriteTo.File("log.txt")
.CreateLogger();
log.Information("Hello, Serilog!");
Para enviar logs para um servidor Graylog, pode utilizar o pacote serilog-sinks-graylog. Este sink permite transmitir logs no formato GELF diretamente para o Graylog.
Guia passo a passo
-
Instalar o pacote:
Adicione o pacote
serilog-sinks-graylogao seu projeto executando o seguinte comando:Install-Package serilog.sinks.graylog -
Configurar o Serilog para Graylog:
Atualize a configuração da sua aplicação com o seguinte excerto de código. Substitua
<XXXXXX>.stackhero-network.compelo domínio da sua instância Graylog:var loggerConfig = new LoggerConfiguration() .WriteTo.Graylog( new GraylogSinkOptions { HostnameOrAddress = "<XXXXXX>.stackhero-network.com", Port = 12201 } ); -
Configurar o Graylog:
- Inicie sessão no seu dashboard do
Graylog. - Navegue até System > Inputs.
- Crie um novo input do tipo "GELF UDP".
- Clique em "Launch new input". Na janela que aparece, ative a opção "Global", atribua um título ao input e guarde as definições sem alterar mais nada.
- Inicie sessão no seu dashboard do
Para reforçar a segurança, recomenda-se restringir os IPs autorizados a ligar-se à porta 12201. Pode configurar isto acedendo ao dashboard da Stackhero, selecionando o seu serviço Graylog e gerindo as definições do "Firewall" para permitir apenas IPs específicos.
Ao seguir estes passos, permite que a sua aplicação .NET envie logs para a sua instância Graylog de forma segura e eficiente.