DebugExceptions

例外をキャッチしてログにエラーを出力し、開発時にはデバッグ画面を表示するミドルウェア

参考:

ActionDispatch::DebugExceptions | Ruby on Rails API [Official]

rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

DebugExceptions – rails/default_middleware_stack.rb at v5.2.3 · rails/rails – GitHub

ShowExceptions

例外を各種 HTTP エラーに変換してユーザーがエラーメッセージを読めるようにするミドルウェア。主に本番環境用。

参考:

ActionDispatch::ShowExceptions | Ruby on Rails API [Official]

rails/show_exceptions.rb at v5.2.3 · rails/rails – GitHub

ShowExceptions – rails/default_middleware_stack.rb at v5.2.3 · rails/rails – GitHub

DebugView

開発時に表示されるデバッグ用のビューを描画するクラス

参考:

ActionDispatch::DebugExceptions::DebugView | Ruby on Rails API [Official]

DebugView – rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

render_exception

例外をエラーとしてログに書き出し、デバッグ画面を表示する。

参考:

render_exception – rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

render_for_browser_request

ブラウザからのリクエストに対してデバッグ画面となるビューを描画する。

参考:

rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

create_template

デバッグ画面用のビューを作成する。

参考:

create_template – rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

routes_inspector

ルーティングを走査して一覧情報を生成する。

参考:

rails/debug_exceptions.rb at v5.2.3 · rails/rails – GitHub

ExceptionWrapper

ミドルウェアで扱いやすいように例外をラップするクラス

参考:

ActionDispatch::ExceptionWrapper | Ruby on Rails API [Official]

rails/exception_wrapper.rb at v5.2.3 · rails/rails – GitHub

ビューテンプレート

開発時のデバッグ画面用のビューテンプレート

参考:

rescue_template – ActionDispatch::ExceptionWrapper | Ruby on Rails API [Official]

rescue_templates – rails/exception_wrapper.rb at v5.2.3 · rails/rails – GitHub

rails/rescues at v5.2.3 · rails/rails – GitHub

rails/routes at v5.2.3 · rails/rails – GitHub

BacktraceCleaner

バックトレースを整形したり、不要な項目を除去したりするフィルタリング用のクラス

参考:

backtrace_cleaner – Rails | Ruby on Rails API [Official]

Rails::BacktraceCleaner | Ruby on Rails API [Official]

Rails::Console::BacktraceCleaner | Ruby on Rails API [Official]

ActiveSupport::BacktraceCleaner | Ruby on Rails API [Official]

rails/backtrace_cleaner.rb (rails) at 5-2-stable · rails/rails – GitHub

rails/backtrace_cleaner.rb (active_support) at 5-2-stable · rails/rails – GitHub

backtrace_cleaner

Rack ミドルウェアには ActionDispatch からリクエストヘッダーの action_dispatch.backtrace_cleaner の項目として、Rails アプリケーションに定義された Rails.backtrace_cleaner が渡される。

ミドルウェア内でリクエストから backtreace_cleaner を取り出す。

request = ActionDispatch::Request.new(env)
backtrace_cleaner = request.get_header("action_dispatch.backtrace_cleaner")

参考:

backtrace_cleaner – rails/application.rb at v5.2.3 · rails/rails – GitHub

backtrace_cleaner – rails/rails.rb at v5.2.3 · rails/rails – GitHub

タグ:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です