読了: 約 2 分
Railsでアプリケーションを創っている中で、ユーザのアクセスログを集計したり、または集計したログを元にランキング機能などのコンテンツを創ったりというシチュエーションがあるかと思います。今回はアクセスログを集計するところまでを。
fluentdがかなり使える
rails初学者としてググっているとfluentdで集計するのが一般的という事でこちらを使用。
基本的な設定は参考サイトを観て頂くとわかるかと思います。
gemfileに追記して、bundle installをするだけ。
Gemfile gem 'act-fluent-logger-rails' gem 'lograge' gem 'fluentd'
fluentd.confを作成して、fluentフォルダを作成、
その中にconfファイルを置きます。
<source> type forward port 24224 tag rails.log </source> <match rails.log> type file path ./log/fluent_out.log </match>
下記のコマンドを実行すると、サーバーを起動するのと同時に
上記したconfファイルの中のpathに記載した所にログが蓄積されていきます。
logの名前は任意のものに設定。
fluentd -c fluent/fluent.conf -vv & rails s
設定もめちゃくちゃ簡単で、ページ遷移すると下記の画像のように取れる様になります。
ログは簡単に取れるようになったので、次回はログを使って何かランキングなど創ってみたいと思います。