便利コマンドメモ

apache ログ解析に便利なコマンドを教えてもらったのでメモしておく。

1時間ごとにアクセス数を見る

( cut -f2 -d: | sort | uniq -c ) < access_log

500エラーが出ている時間を調べる

( awk '$9==500{print}' | cut -f2,3 -d: | sort | uniq -c ) < access_log

IPアドレスのアクセス回数上位5個を見る

( awk '{print $1}' | sort | uniq -c | sort --numeric-sort | tail -5 ) < access_log

IPアドレスをすべてアクセス順に見る(結果が多いのでファイルに出力する)

( awk '{print $1}' | sort | uniq -c | sort --n --reverse ) < access_log > ipaddr.txt

15時20分台に来た、ワイルドカードで始まるクエリのリクエストを見る

( grep 2012:15:2 | awk '$7 ~ /^\/search\?q=\*/{print}' ) < access_log