読者です 読者をやめる 読者になる 読者になる

LTSV ロガーを自作して Rails アプリで使ってみた

rails ruby

WEB+DB PRESS Vol.74 の LTSV 特集を読んで LTSV 熱が高まったので、Ruby 用の LTSV ロガーを作って、Rails アプリに組み込んでみた。

LTSV フォーマットでログを出力するライブラリは既にいろんな人が公開しているから、車輪の再発明になってしまったな。

Rack ミドルウェア版は gem が見当たらなかったんで作ってみたけど、Rack::CommonLogger のソースを参考にしたから難しいことやってない。

Rails で使うには、まず Gemfile に追加して

gem "logger-ltsv", require "logger/ltsv"
gem "rack-ltsvlogger", require "rack/ltsvlogger"

config/environments の development.rb や production.rb で、LTSV ロガーを使うように設定すればいい。

  # LTSV フォーマットでログを出力する
  config.logger = LTSVLogger.new($stdout)

  # Rack のログを LTSV フォーマットで出力する
  config.middleware.insert_before(Rails::Rack::Logger, Rack::LTSVLogger, $stdout)
  config.middleware.delete(Rails::Rack::Logger)

今回は Heroku にデプロイするんで、ログは標準出力に出力してみた。

WEB+DB PRESS Vol.74
WEB+DB PRESS Vol.74
posted with amazlet at 13.05.04
井上 誠一郎 奥野 幹也 田中 慎司 西嶋 悠貴 伊藤 直也 登尾 徳誠 天野 祐介 後藤 秀宣 ヒノケン 近藤 宇智朗 近藤 嘉雪 渡邊 恵太 堤 智代 中島 聡 A-Listers はまちや2 川添 貴生
技術評論社
売り上げランキング: 438