Skip to content

jafarov007/logging-service

Repository files navigation

Merkezi Loglama Servisi (Centralized Logging Service)

Bu servis, mikroservis mimarisindeki tüm logları merkezi bir noktada toplamak, saklamak ve sorgulamak için tasarlanmış ASP.NET Core 8 tabanlı bir çözümdür.

Kurulum ve Çalıştırma

  • kurma:

    docker-compose up -d --build
  • silme:

    docker-compose down
    docker volume rm xxxx ismi neyse artik docker volume ls le gorunuyo:)

Erişim Noktaları

Sistem ayağa kalktıktan sonra şu adreslerden erişebilirsiniz:

Özellikler

  • Asenkron Loglama: Channel<T> kullanılarak non-blocking log ingestion sağlanır.
  • Hassas Veri Maskeleme: GDPR uyumluluğu için PII (Username, MAC, Şifreler) otomatik maskelenir.
  • Akıllı Retention: Log seviyesine göre (Info: 90 gün, Error: 365 gün vb.) otomatik temizlik.
  • Kritik Alert Mekanizması: Critical seviyesindeki loglar için Slack/Webhook entegrasyonu.
  • Batch Desteği: Yüksek trafikte tek istekte 100 log'a kadar toplu gönderim.
  • Güvenlik: API Key korumalı ingestion endpoint'leri.

API Endpoint'ler

  • POST /api/log: Tekil log gönderimi.
  • POST /api/log/batch: Toplu log gönderimi.
  • GET /api/logs: Filtreli log sorgulama.
  • GET /health: Servis sağlık durumu.

Log JSON Şeması

{
  "timestamp": "2026-03-10T17:00:00Z",
  "service": "AuthService",
  "correlation_id": "uuid",
  "level": "info",
  "event_type": "login_success",
  "status": "success",
  "details": "Açıklama...",
  "device": {
    "ip": "192.168.1.1",
    "device_type": "Web"
  }
}

🧪 Testleri Çalıştırma

Sistemin doğru çalıştığını teyit etmek için:

dotnet test

Faydalı Komutlar

  • Yedek Alma (Backup): ./scripts/backup.sh (Sıkıştırılmış SQL yedeği oluşturur)
  • Logları İzleme: docker logs -f log_service

http://log_service:8080

http://x.x.x.x:5010

http://host.docker.internal:5010

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages