Bu Python uygulaması Apache log dosyalarını analiz eder ve çeşitli grafikler ile istatistikler oluşturur.
- Saatlik istek dağılımı analizi
- En çok istek yapan IP'lerin analizi
- Tarayıcı ve işletim sistemi dağılımı
- HTTP durum kodlarının dağılımı
- HTTP metotlarının kullanım analizi
- Günlük trafik analizi
- Detaylı istatistik raporu
- Python sanal ortamını oluşturun ve aktive edin:
python3 -m venv venv
source venv/bin/activate- Gerekli paketleri yükleyin:
pip install -r requirements.txt- Programı çalıştırın:
python log_analyzer.py- Apache log dosyasının yolunu girin
- Program otomatik olarak aşağıdaki dosyaları oluşturacaktır:
hourly_requests.png: Saatlik istek dağılımıtop_ips.png: En çok istek yapan IP'lerbrowser_distribution.png: Tarayıcı dağılımıos_distribution.png: İşletim sistemi dağılımıstatus_codes.png: HTTP durum kodlarının dağılımırequest_methods.png: HTTP metotlarının dağılımıdaily_traffic.png: Günlük trafik grafiği
stats_report.txt dosyasında aşağıdaki bilgiler yer alır:
- Toplam istek sayısı
- Toplam gönderilen veri miktarı
- Ortalama yanıt boyutu
- Benzersiz IP sayısı
- En sık karşılaşılan durum kodu
- En sık kullanılan tarayıcı
- En sık kullanılan işletim sistemi
Program aşağıdaki formatta Apache loglarını destekler:
66.249.81.164 - - [16/Feb/2025:00:00:19 +0300] "GET /nNZaB82q4Lb5cxJV/20250215/15771600 HTTP/1.0" 403 10548 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/132.0.0.0 Safari/537.36,gzip(gfe)"
Log dosyanız farklı bir formatta ise, log_analyzer.py dosyasındaki parse_log_line fonksiyonunu log formatınıza göre düzenleyebilirsiniz.