■squid リバースプロキシサーバのログ 自分の内部Webサーバへのアクセスをみるだけなので、非常に詰まらない。 一週間分のローテーションを合わせても少ししかない。 まあ、私以外に使う人がいないので。 # cat /var/log/squid/access.log* | \ awk -F\[ '{print $2}' | \ awk -F\: '{print $2 ":" $3}' | wc -l 57 ■まあ、とりあえず保存。 念の為、並べ替え 分単位での重複カウント = 1分あたりのアクセス数となる。 # cat /var/log/squid/access.log* | \ awk -F\[ '{print $2}' | \ awk -F\: '{print $2 ":" $3}' | \ sort | uniq -c | awk '{print $2 "\t" $1}' > reverse.txt $ (echo 'set terminal png size 1024,600'; \ echo 'set output "reverse.png"'; \ echo 'set xdata time'; \ echo 'set key outside'; \ echo 'set timefmt "%H:%M"'; \ echo 'set format x "%H:%M"'; \ echo 'set yrange [0:10]'; \ echo 'plot "reverse.txt" using 1:2 title "access count" with lines'; \ ) | gnuplot
■Win版SquidクライアントPCのアクセスログも。 各時間帯の傾向が分かる。 一台しかない自身のアクセスログしか取らないPCを一週間分とはいえ、 以下のグラフのように900を超えているが、 一日3000件~6000件のRSSやWeb記事、調べ物をさばいているので、別に驚かない。 $ cat access.log* | awk -F\[ '{print $2}' | \ awk -F\: '{print $2 ":" $3}' | \ sort | uniq -c | awk '{print $2 "\t" $1}' > client.txt $ sort -k 2 -n client.txt | tail -1 22:35 925 $ (echo 'set terminal png size 1024,600'; \ echo 'set output "client.png"'; \ echo 'set xdata time'; \ echo 'set key outside'; \ echo 'set timefmt "%H:%M"'; \ echo 'set format x "%H:%M"'; \ echo 'set yrange [0:1000]'; \ echo 'plot "client.txt" using 1:2 title "access count" with lines'; \ ) | gnuplot