Konuyu Açan
#0
Linux ortamında log dosyalarındaki HTTP durum kodlarını saymak, web sunucusu yönetiminde sıkça karşılaşılan bir ihtiyaçtır. Bu tür işlemler, sunucu performansını analiz etmek ve hataları izlemek için kritik öneme sahiptir.
Öncelikle, genellikle web sunucularının log dosyalarında HTTP durum kodları, her isteğin sonunda yer alır. Örneğin, bir Apache log dosyası şu şekilde görünebilir:
Burada, HTTP durum kodları (200, 404 gibi) her satırın son kısmında yer alır. Bu kodları saymak için aşağıdaki komutu kullanabilirsiniz:
Bu komutun parçalarını açıklayalım:
Bu komutun çıktısı, log dosyanızdaki HTTP durum kodlarının toplam sayısını ve her birinin kaç kez göründüğünü gösterecektir. Örneğin:
Bu çıktı, 200 durum kodunun 150 kez, 404 durum kodunun ise 50 kez görüldüğünü belirtir.
Sonuç olarak,
awk, bu tür metin işleme görevleri için güçlü bir araçtır. Aşağıda, awk kullanarak HTTP durum kodlarını nasıl sayabileceğinizi detaylı bir şekilde açıklayacağım.Öncelikle, genellikle web sunucularının log dosyalarında HTTP durum kodları, her isteğin sonunda yer alır. Örneğin, bir Apache log dosyası şu şekilde görünebilir:
CODE
12127.0.0.1 - - [12/Mar/2023:10:00:00 +0000] "GET /index.html HTTP/1.1" 200 2326
127.0.0.1 - - [12/Mar/2023:10:00:01 +0000] "GET /notfound.html HTTP/1.1" 404 178Burada, HTTP durum kodları (200, 404 gibi) her satırın son kısmında yer alır. Bu kodları saymak için aşağıdaki komutu kullanabilirsiniz:
CODE
1awk '{print $9}' access.log | sort | uniq -c | sort -nrBu komutun parçalarını açıklayalım:
-
awk '{print $9}' access.log:access.logdosyasındaki her satırdan dokuzuncu sütunu alır. HTTP durum kodları burada yer aldığından, bu sütun kodları elde etmemizi sağlar.
-
sort: Elde edilen durum kodlarını sıralar. Bu adım, sonraki adımda benzer kodları bir araya getirmek için gereklidir.
-
uniq -c: Benzer durum kodlarını birleştirir ve her birinin kaç kez geçtiğini sayar. Bu sayım sonucu, durum kodlarıyla birlikte görüntülenir.
-
sort -nr: Son olarak, sayılan durum kodlarını en yüksekten en düşüğe doğru sıralar.
Bu komutun çıktısı, log dosyanızdaki HTTP durum kodlarının toplam sayısını ve her birinin kaç kez göründüğünü gösterecektir. Örneğin:
CODE
12 150 200
50 404Bu çıktı, 200 durum kodunun 150 kez, 404 durum kodunun ise 50 kez görüldüğünü belirtir.
Sonuç olarak,
awk aracı, log dosyalarındaki HTTP durum kodlarını analiz etmek için son derece etkili bir yöntem sunar. Bu tür analizler, sunucu performansını artırmak ve kullanıcı deneyimini iyileştirmek için önemlidir.