Skip to main content
BuildingBlocks.Logging.Serilog, uygulamayı Serilog’a bağlayan iki ince extension sağlar: host’u Serilog’a yönlendirme ve HTTP request logging middleware’i. Asıl sink/enrich/filter yapılandırması appsettings.json’daki Serilog bölümünden okunur — kod tarafı minimaldir.
Metrik/tracing tarafı (OpenTelemetry, Prometheus) ayrıdır; bkz. Monitoring ve Observability.

Extension’lar

LogEnricher.EnrichFromRequest her istek log’una şu alanları ekler:

Program.cs yerleşimi

UseToSerilog() host kurulumunda en başta, request logging middleware’i ise pipeline’ın erken bir noktasında çağrılır.

appsettings — Serilog yapısı

Serilog Serilog.Settings.Configuration ile JSON’dan kurulur. Console (dev), File ve Seq (5341 ingest portu) sink’leri kullanılır; enrich ve gürültü filtreleri burada tanımlanır.
Dev ortamında Seq UI 5342 portunda açılır (ingest 5341). Yapısal log sayesinde ClientIP = '...' veya RequestPath like '/api/admin%' gibi sorgularla filtreleme yapabilirsiniz.
Hassas veriyi (parola, token, TCKN) log’a yazmayın. Domain value object’leri bu konuda yardımcıdır — örneğin OtpCode.ToString() daima "******" döner.

İlgili

Observability

Seq, Prometheus ve Grafana yığını.

Monitoring

OpenTelemetry metrics ve health gauge.

Operasyon

Ortam değişkenleri ve log yönetimi.

API

Middleware pipeline sırası.