analytic.php
<?PHP $argDate = strtotime($argv[1]); $file = $argv[2]; for($i = -120; $i <= 120; $i++){ echo date('d/M/Y:H:i', strtotime("+${i} minute", $argDate)); if($i < 120){ echo "\n"; } } ?>
analytic.sh
#!/bin/sh echo '' > result.csv for line in `php ./analytic.php "${1}" ./access_log` ; do count=`grep "${line}" ./access_log | egrep -v "\.(gif|jpg|css|js) " | wc -l` echo ${line},${count} >> result.csv done
access_logがあるフォルダに上記のファイル2点を作成して
sh ./analytic.sh "2012-06-13 18:00:00"
としてあげると数十分シェルが固まってから6月13日の18時から前後2時間で分毎のおよそのリクエスト数がresult.csvに出力されます。