irfo
Moderatör
- Katılım
- 7 Ocak 2026
- Mesajlar
- 290
- Tepkime puanı
- 2
- Puanları
- 18
Modern sistemlerde uygulama sayısı ve sunucu çeşitliliği arttıkça, hata ayıklamak (troubleshooting) için her sunucuya ayrı ayrı SSH ile bağlanıp tail -f /var/log/nginx/error.log yazmak sürdürülebilir bir yöntem olmaktan çıktı. DevOps dünyasında bu karmaşayı çözen en popüler çözüm; Elasticsearch, Logstash ve Kibana üçlüsünden oluşan ELK Stack'tir.
ELK Stack, farklı kaynaklardan gelen milyonlarca satır logu toplar, anlamlandırır ve tek bir merkezden aranabilir hale getirir.
Bu güçlü yapıyı oluşturan üç ana parça, bir fabrikanın bölümleri gibi uyum içinde çalışır:
Modern ELK yapılarında, sunuculara Logstash kurmak yerine çok daha az kaynak tüketen Beats (Filebeat, Metricbeat vb.) kullanılır. Filebeat, log dosyalarındaki her yeni satırı anında yakalar ve işlenmesi için Logstash'e gönderir.
Logstash'in gelen bir Nginx logunu nasıl parçaladığını gösteren temel bir yapılandırma dosyası:
Forum siteniz anlık yavaşladığında veya beyaz sayfa (HTTP 500) hatası verdiğinde, ELK Stack üzerinden şu aramayı yaparak saniyeler içinde hatayı bulabilirsiniz: "status:500 AND message: 'PHP Fatal Error'". Hangi dosyanın, hangi satırda, hangi eklenti yüzünden hata verdiğini SSH ile uğraşmadan görebilirsiniz.
ELK Stack, "samanlıkta iğne arama" devrini bitirip log verilerini birer altın madenine dönüştürür. Başlangıçta kurulumu ve yönetimi biraz zahmetli (özellikle kaynak tüketimi açısından) olsa da, profesyonel bir DevOps altyapısı için vazgeçilmez bir unsurdur.
ELK Stack, farklı kaynaklardan gelen milyonlarca satır logu toplar, anlamlandırır ve tek bir merkezden aranabilir hale getirir.
ELK Stack Bileşenleri Nelerdir?
Bu güçlü yapıyı oluşturan üç ana parça, bir fabrikanın bölümleri gibi uyum içinde çalışır:
- [] Elasticsearch (Depolama & Arama): Sistemin beynidir. Log verilerini JSON formatında saklayan ve ultra hızlı arama yapmanıza olanak tanıyan bir arama motorudur. [] Logstash (İşleme & Filtreleme): Bir veri boru hattıdır (pipeline). Farklı kaynaklardan gelen ham logları alır, parçalar, temizler ve Elasticsearch'e uygun hale getirir.
- Kibana (Görselleştirme): İşin vitrinidir. Elasticsearch'teki verileri görselleştiren, dashboardlar oluşturan ve loglar içinde kolayca arama yapmanızı sağlayan arayüzdür.
Beats: Hafif Veri Taşıyıcılar
Modern ELK yapılarında, sunuculara Logstash kurmak yerine çok daha az kaynak tüketen Beats (Filebeat, Metricbeat vb.) kullanılır. Filebeat, log dosyalarındaki her yeni satırı anında yakalar ve işlenmesi için Logstash'e gönderir.
| Araç | Görevi |
|---|---|
| Filebeat | Log dosyalarını toplar. |
| Metricbeat | Sistem metriklerini (CPU, RAM) toplar. |
| Packetbeat | Ağ trafiğini izler. |
Örnek: Logstash Yapılandırması
Logstash'in gelen bir Nginx logunu nasıl parçaladığını gösteren temel bir yapılandırma dosyası:
Kod:
input { beats { port => 5044 } }
filter { if [type] == "nginx-access" { grok { match => { "message" => "%{COMBINEDAPACHELOG}" } } } }
output { elasticsearch { hosts => ["localhost:9200"] index => "logs-%{+YYYY.MM.dd}" } }
Neden Merkezi Log Yönetimi Kullanmalısınız?
- [] Korelasyon (İlişkilendirme): Aynı anda 5 farklı serviste oluşan hataları tek bir zaman tünelinde görerek sorunun kaynağını saniyeler içinde bulabilirsiniz. [] Gerçek Zamanlı Analiz: Uygulamanızda kaç kullanıcının 404 hatası aldığını anlık olarak izleyebilirsiniz. [] Güvenlik: Başarısız giriş denemelerini veya şüpheli IP adreslerini tespit ederek otomatik alarmlar kurabilirsiniz. [] Dökümantasyon: Geçmişe dönük log saklayarak sistem performansınızı aylar bazında kıyaslayabilirsiniz.
XenForo Forum Sahipleri İçin Senaryo
Forum siteniz anlık yavaşladığında veya beyaz sayfa (HTTP 500) hatası verdiğinde, ELK Stack üzerinden şu aramayı yaparak saniyeler içinde hatayı bulabilirsiniz: "status:500 AND message: 'PHP Fatal Error'". Hangi dosyanın, hangi satırda, hangi eklenti yüzünden hata verdiğini SSH ile uğraşmadan görebilirsiniz.
Sonuç
ELK Stack, "samanlıkta iğne arama" devrini bitirip log verilerini birer altın madenine dönüştürür. Başlangıçta kurulumu ve yönetimi biraz zahmetli (özellikle kaynak tüketimi açısından) olsa da, profesyonel bir DevOps altyapısı için vazgeçilmez bir unsurdur.