apacheのログ可視化をする。
構築はUbuntuで行ったのでDebian系であればおそらく動くと思う。
RedHat系でやるなら適度にyumなどに置き換えてもらえれば。
パケット送信
適当にパケットを生成して投げるコマンド。
2種類のパケットを送信(32件)
適当にhttpリクエストを投げてapacheのログを生成させる。
for a in $( cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 10 | head -n 32) do ab -n 1 -c 1 http://192.168.0.100/?src=$a ab -n 1 -c 1 http://192.168.0.100/$a_$a sleep 0.03 done
50のリクエスト(50件)
適当にhttpリクエストを投げてapacheのログを生成させる。
for a in $(seq 1 50) do ab -n 1 -c 1 http://192.168.0.100/?src=$a sleep 0.03 done
パケット描画
logstalgiaに投げれば勝手にやってくれる。
リアルタイム監視
リアルタイムで描画する場合はパイプで渡す。
sudo tail -f /var/log/apache2/access.log | logstalgia --sync -b 696969
ログの自動生成 -> 描画
ログを意図的に生成させるapache-loggenを使えばhttpリクエストを投げなくても描画される。
apache-loggen --rate 30 | logstalgia -
ログの自動生成 -> 描画2
背景:灰色,全画面表示,ホスト名をすべて表示
apache-loggen --rate 30 | logstalgia - -f -b 696969 -x
環境セットアップ
ubuntuでやったのでredhatは適度に読み換える。
rubyのインストール
apache-loggenに必要。
sudo apt-get install ruby ruby-dev irb rdoc
apache-logのインストール
apache-loggenのインストール
sudo gem install apache-loggen
logstalgiaのインストール
logstalgiaはデフォルトリポジトリにあったので直接インストール可能。
sudo apt-get install logstalgia
動画・静止画作成
描画内容を動画や静止画に出力することも可能。
動画に出力
解像度は1280×720に設定。
apache-loggen --rate 30 | logstalgia -1280x720 --output-ppm-stream out.ppm -
ffmpegをインストール
画像を編集するのに必要。
sudo add-apt-repository ppa:mc3man/trusty-media sudo apt-get update sudo apt-get install ffmpeg
ppmをMP4に変換
動画を変換する。
ffmpeg -vpre libx264 -y -f image2pipe -vcodec ppm -i out.ppm -vcodec libx264 -pix_fmt yuv420p -crf 1 -threads 0 -bf 0 Logstalgia.mp4
デモ動画
コメントを残す