Discussion

Gerçek Zamanlı Log İzleme Scripti Geliştirme

Started by ofaman · 21 Jul 2026 01:26 · 5 Views · 0 Replies
Thread Starter #0
Gerçek zamanlı log izleme, sistem yöneticileri ve geliştiriciler için kritik bir ihtiyaçtır. Bu tür bir izleme, uygulama performansını değerlendirmek, hata ayıklamak ve sistem güvenliğini sağlamak amacıyla kullanılır. Bu yazıda, basit bir gerçek zamanlı log izleme scriptinin nasıl geliştirileceğini ele alacağız.

İlk olarak, log dosyalarının nerede tutulduğunu belirlemek önemlidir. Genellikle, sistem logları /var/log dizininde yer alır. Örneğin, syslog veya auth.log dosyalarını izlemek isteyebilirsiniz. Scriptimizin temel işlevi, bu dosyaları takip etmek ve yeni satırlar eklendikçe ekrana yansıtmak olacaktır.

Scriptimizi Python dilinde yazmayı tercih edelim. Python, dosya okuma ve işlem yapma konusunda oldukça kullanışlıdır. Aşağıda, basit bir log izleme scriptinin örneğini bulabilirsiniz:

CODE
1234567891011121314151617
import time

def tail(f):
    f.seek(0, 2)  # Dosyanın sonuna git
    while True:
        line = f.readline()
        if not line:  # Yeni satır yoksa bekle
            time.sleep(0.1)  
            continue
        yield line

if [b]name[/b] == "[b]main[/b]":
    log_file_path = '/var/log/syslog'  # İzlenecek log dosyası
    with open(log_file_path) as log_file:
        for line in tail(log_file):
            print(line, end='')  # Yeni satırı yazdır


Yukarıdaki script, belirtilen log dosyasını açar ve dosyanın sonuna giderek yeni eklenen satırları sürekli olarak izler. tail fonksiyonu, dosyayı takip ederken yeni satırlar geldiğinde bunları ekrana yazdırır.

Bu script, temel bir izleme işlevi sunar ve daha karmaşık gereksinimler için geliştirilebilir. Örneğin, log satırlarının belirli bir düzende filtrelenmesi, belirli anahtar kelimelerin aranması veya bir web arayüzü ile entegrasyon gibi özellikler eklenebilir.

Siz de benzer bir log izleme çözümü geliştirdiniz mi? Hangi diller veya araçlar kullandığınız hakkında deneyimlerinizi paylaşabilirsiniz.

You must be logged in to reply.

0 quotes selected