[rails]unicornでpryを使う
先日、pryでデバッグする という記事を書きましたが、こちらはrails server(フォアグランド)でアプリを立ち上げた際のデバッグ方法でした。
今回はunicornを使ってアプリをバックグラウンドで立ち上げている際にbiding.pryを使う方法をメモしておきます。
- Gemfileにpry-remoteを追加
# Gemfile
group :test, :development do
gem "pry-rails"
gem "pry-remote" # 追加
endこちら pry-byebug が入っている状態だとうまく動きませんでした。
- ブレイクポイントを設置したい箇所にbinding.remote_pryを設置
@user = User.where(id: xxx)
binding.remote_pry- 該当ページにアクセスするとunicornがwait状態になります
unicornログに以下のようなログが出ます
[pry-remote] Waiting for client on druby://127.0.0.1:9876- ターミナルからpry-remoteを実行
bundle exec pry-remoteコマンドを実行すると前回と同様にpryでデバッグできるようになります。