November 13, 2022
Парсер логов Apache на минималках
Парсер логов Apache
При парсинге логов важно понимать что их можно настроить и получать только ту информацию что нам надо, но если лог дефолтный, то вам подойдёт вот этот скрипт ниже.
$f = "other_vhosts_access.log"; $s = file($f); foreach ($s as $l) { $a = explode(" ",$l); $domen = preg_replace("#\:\d+$#", "", $a[0]); $port = preg_replace("#^.+\:#", "", $a[0]); $ip = $a[1]; $time = str_replace("[","",$a[4]); // [13/Nov/2022:08:31:47 +0300] a4-a5 $meth = str_replace("\"","",$a[6]); // a6 $uri = $a[7]; $code = $a[9]; $size = $a[10]; $ref = str_replace("\"","",$a[11]); // referrer $ua = rtrim(@implode(" ", array_slice($a, 12) )); $ua = str_replace("\"","",$ua); // useragent @$A[$ua]++; } arsort($A); print_r($A);
Грубо говоря, вам остается лишь выбрать какие параметры хотите получить.