Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Para enviar eventos estruturados da aplicação .NET 10 ao Grafana Loki, use o sink Serilog.Sinks.Grafana.Loki. Para coletar a saída de contêineres Docker, considere o Docker logging driver do Loki. São caminhos diferentes: Serilog captura eventos no código da aplicação; o driver captura logs do contêiner. A escolha depende do contexto necessário, da plataforma e de como você quer lidar com uma indisponibilidade do Loki.

Escolha onde capturar os logs

Opção O que captura Quando considerar Limitações importantes
Serilog com sink para Loki Eventos estruturados emitidos pela aplicação, com contexto que o código registra. Quando os logs precisam incluir propriedades da aplicação e ser enviados diretamente ao Loki. O sink é um projeto comunitário; sua documentação declara compatibilidade, mas isso não equivale a uma garantia de suporte comercial da Grafana.
Docker Loki logging driver Saída de logs do contêiner encaminhada pelo host Docker. Quando o objetivo é coletar logs de contêiner sem configurar um sink em cada aplicação. É um cliente de terceiros, requer instalação em cada host Docker e não é suportado em Windows.
Grafana Alloy ou pipeline OTLP Uma pipeline mais ampla de telemetria, com logs enviados ao Loki por OTLP HTTP. Quando a operação deve se apoiar em um coletor de telemetria, em vez de integrar cada aplicação diretamente. A configuração depende do endpoint e dos recursos de metadados estruturados disponíveis na versão do Loki.

Essas opções podem coexistir para cobrir necessidades diferentes. Defina primeiro se precisa de eventos instrumentados da aplicação, stdout/stderr do contêiner ou uma pipeline comum para mais sinais. Depois considere plataforma, operação e tolerância a falhas. A documentação da Grafana classifica o Docker driver entre clientes de terceiros e distingue seu compromisso de suporte daquele do Alloy: documentação do cliente Docker driver.

Enviar logs da aplicação com Serilog

O README do sink Serilog.Sinks.Grafana.Loki declara suporte a net8.0, net9.0 e net10.0, e exige Serilog 4.3.1 ou posterior. Ele permite configuração com Serilog.Settings.Configuration, envio estruturado por HTTP, lotes assíncronos e labels; a integração com TraceId e SpanId é opcional. Consulte o README para a configuração compatível com as versões dos pacotes que seu projeto utiliza: Serilog.Sinks.Grafana.Loki no GitHub.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configurar o destino

Informe ao sink a URI base do Loki. Segundo o README, o sink acrescenta /loki/api/v1/push ao endereço fornecido; portanto, não trate a URI configurada como se já fosse necessariamente o endpoint completo de push. Defina também labels que ajudem a identificar serviço e ambiente, sem transformar valores de alta cardinalidade — como IDs únicos por requisição — em labels indiscriminadamente. O projeto do sink documenta a configuração e os parâmetros aceitos.

Separar aplicação e infraestrutura

Mantenha o código que emite eventos separado dos detalhes do destino. Configure a URI e eventuais credenciais pela configuração de implantação, não por valores secretos gravados no repositório. Antes de adotar o sink, decida quais propriedades serão registradas e quais labels serão indexadas; retenção, segurança, volume e custo dependem da implantação e não são definidos pela compatibilidade do pacote.

Coletar logs de contêiner com o Docker driver

O Loki Docker logging driver encaminha logs do contêiner diretamente ao Loki e pode descobrir labels de contêiner ou serviço conforme o ambiente. Ele precisa ser instalado em cada host Docker em que será usado. A documentação apresenta configurações por contêiner, pelo daemon e em Compose/Swarm: instalação e configuração do Docker driver.

Configurar por contêiner

Use as opções de logging do Docker para selecionar o driver e informar suas opções. A documentação do plugin mostra o uso de --log-driver e --log-opt, incluindo endpoint de push, tamanho de lote, timeout e retries. Escolha esses parâmetros deliberadamente: eles afetam o envio e o comportamento durante falhas do destino.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configurar pelo daemon

O driver também pode ser definido no daemon.json. Nesse formato, valores numéricos e booleanos em log-opts devem ser escritos como strings. Verifique a sintaxe e os nomes de opção na documentação do driver antes de reiniciar o daemon; uma configuração inválida pode impedir que o Docker aplique o logging driver esperado.

Configurar em Compose ou Swarm

Em Compose ou Swarm, declare a configuração de logging no serviço apropriado. Isso torna a intenção visível na configuração de implantação, mas não elimina a necessidade de instalar o plugin nos hosts Docker. Mantenha tokens e outras credenciais fora dos arquivos versionados e injete-os por um mecanismo de segredos adequado à plataforma.

Entender logs locais e indisponibilidade do Loki

Por padrão, o Docker driver combina o envio ao Loki com o driver json-file, o que preserva a possibilidade de consultar docker logs. Se configurar no-file=true, o Docker deixa de criar esses arquivos locais e docker logs fica indisponível para esses contêineres. Se precisar de rotação local, configure explicitamente as opções correspondentes; não presuma que as configurações gerais padrão de json-file serão aplicadas automaticamente às opções do plugin.

O driver mantém logs em memória enquanto tenta enviá-los. Se o Loki estiver indisponível e o limite de retries for atingido, entradas podem ser descartadas. Retries ilimitados podem evitar o descarte por esgotamento do limite, mas também podem fazer o daemon Docker esperar indefinidamente ao processar logs durante a remoção de um contêiner. Nenhuma dessas escolhas é universal: alinhe a política de retries com os requisitos de disponibilidade, armazenamento local e comportamento operacional do serviço. A semântica é descrita na documentação do Docker driver.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Usar Alloy ou OTLP para uma pipeline mais ampla

Grafana Alloy é a opção da Grafana para pipelines de telemetria e é compatível com OpenTelemetry Collector. O Loki também aceita logs via OTLP HTTP. Em um Collector, a documentação do Loki indica o exporter otlphttp com o endpoint base apropriado; não presuma que ele use exatamente a mesma configuração de endpoint do sink Serilog ou do Docker driver. Consulte envio de logs OpenTelemetry ao Loki e a documentação do Grafana Alloy.

Para ingestão OTLP, structured metadata precisa estar habilitada. Ela vem habilitada por padrão no Loki 3.0 ou posterior, segundo a documentação de ingestão; em uma instalação diferente, confirme a configuração antes de depender desse recurso.

Verificar a versão e o ciclo de suporte do .NET

.NET 10 foi lançado em 11 de novembro de 2025 como versão LTS. Na página oficial consultada em 7 de outubro de 2026, o patch mais recente indicado era 10.0.12, publicado em 8 de setembro de 2026, com fim do suporte em 14 de novembro de 2028. Essas informações mudam: confirme o patch atual e o ciclo de suporte na política oficial de suporte do .NET antes de implantar, e mantenha o runtime atualizado.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.