私はexception_logger(https://github.com/ryancheung/exception_logger)を使用して、レールアプリケーションのエラーをログに記録しており、それは作業ファイルです。しかし、私はログに記録したくないバックトレースを記録しています。Rails:ロギングバックトレースをスキップ
バックトレースのロギングを停止する方法はありますか?
私はexception_logger(https://github.com/ryancheung/exception_logger)を使用して、レールアプリケーションのエラーをログに記録しており、それは作業ファイルです。しかし、私はログに記録したくないバックトレースを記録しています。Rails:ロギングバックトレースをスキップ
バックトレースのロギングを停止する方法はありますか?
サイドノート:なぜあなたはそれを望みますか?バックトレースは、コード内でどこに問題(例外)が発生したかを正確に伝えるため、非常に貴重です。
いずれにしても、ログ例外のバックトレースはexception_logger
gemで設定できないようです。だからあなたの唯一の選択肢は、そのコードの一部を猿で修正することです。私はLoggedException
modelのバックトレース用のセッターにパッチを当てようとしています。
lib/initializers
下イニシャライザにこれを入れて:
# lib/initializers/logged_exception_patch.rb
module ExceptionLogger
class LoggedException < ActiveRecord::Base
def backtrace=(trace)
write_attribute :backtrace, ""
end
end
end
をこのコードは、モデルが記録された例外を保存するときだけトレースバック無視し、代わりにbacktrace
列に空白文字列を保存するようになります。
しかし、私はもう一度言わせて - 私はあなたが、遅かれ早かれ、実際の現場で実際の例外をログに記録されている場合は、不明瞭な起源と例外が発生しますので、あなたがバックトレースをログに記録しませ後悔すると思います...