byebug 導入
ruby2.0環境下では、pry-nav ならびに pry-debugger のデバッグ機能に不具合があり、また例外補足のためのツール pry-exception_explorer にも不具合があるため、デバッグ用のツールとして同様の機能を持つ byebug および pry-rescue への切り替えを行った。
また今回のタイミングで、コールスタック(バックトレース)を参照するためのツールである pry-stack_explorer の導入も行った。
byebug は pry と同じインタフェイスを持っているとのことで使用法は pry と同じである。
まず、以下の gem は Gemfile から削除した。
1 2 |
|
そして次の gem を導入する。
1 2 3 4 5 6 7 8 |
|
■pry-rescue使用法
デバッグ対象をブロックとして括り、その内部で何らかの例外が飛ばされた場合、その位置で binding.pry が起動される。
1 2 3 4 5 |
|
■pry-stack_explorer使用法
pry-stack_explorer を導入することで、binding.pry を利用したデバッグ中に、show-stack コマンドを用いてコールスタックを参照することが可能である。 以下のコマンドを使ってコールスタックの内容を参照可能である。callerより断然便利。
スタックを上がる
up
下がる
down
フレームを指定して移動
frame N
参考サイト:
https://github.com/deivid-rodriguez/byebug
https://github.com/pry/pry-stack_explorer
http://qiita.com/joker1007/items/f132db1b4a5e3f9278e9
pry 関連のサブツールについて
http://blog.uu59.org/2012-10-13-pry.html
ruby2.0環境下における pry-debugger の不具合について
https://bugs.ruby-lang.org/issues/7214