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

UUUM攻殻機動隊

UUUMのエンジニアによる技術ブログです

【小ネタ】Rails5でlogrageの出力にbacktraceを足す

nazoです。

Rails でログを出力する際に、書式とかをプラガブルに設定できる lograge という gem があるのですが、デフォルトで backtrace(スタックトレース) を含めてくれなくて困っていました。

従来はモンキーパッチで結構苦しい対応を迫られていたようですが、Rails5 から、payload に例外オブジェクトがそのまま入るようになった ので、

  config.lograge.custom_options = lambda do |event|
    { backtrace: event.payload[:exception_object].try(:backtrace) }
  end

で簡単に backtrace を挿入できるようになりました。便利ですね。