Apache、MySQL、PostgreSQL…様々なログを解析できる『request-log-analyzer』

前回、Webサーバのログを解析、モニタリング出来る『GoAccess』というツールを紹介したが、今回はそれと似たツール『request-log-analyzer』を紹介する。
このコマンドも『GoAccess』と同様にログを解析することが可能。解析できるログもWebサーバだけではなく、MySQLやPostgreSQL、Ruby on Railsと様々なログを解析できる。
ただし、ターミナル上でのリアルタイムのモニタリングには不向きなので、用途に応じて使い分けたほうがいいだろう。

1.インストール

まずはインストール。以下のコマンドを実行する。

gem install request-log-analyzer

2.コマンドの実行

インストールができたら、実際にコマンドを実行してみる。
解析したいログを引数に指定して実行。

request-log-analyzer /var/log/httpd/access_log

上記スクリーンショットのように、ターミナル上でアクセス数などがバー表示されるようになっている。
縦に長く表示されるため、watchコマンドなどで常時実行には向いていない。

また、このコマンドにはhtml出力オプションが存在している。
試しに、以下のように出力してみよう。

request-log-analyzer /var/log/httpd/access_log --output HTML > /var/www/html/log_analyze.html

その後、出力したhtmlファイルにアクセスする。

cronで何分かおきに実行させることで、定期的にログの解析を行わせることも可能だ。