LoginSignup
37
41

More than 3 years have passed since last update.

Visual Studio CodeでRailsのリモートデバッグ

Last updated at Posted at 2018-12-22

はじめに

この記事はLinkbal Advent Calendar 2018の21日目の記事です。Rails初心者のタンです。
僕はリンクバルという現在の会社に入る前に、PHPエンジニアでした。
Railsの開発環境を立ち上げたあとに、開発の準備のため最初にやったことはデバッグツールを設定することです。
RailsのデバッガーといえばPryは盛んなものかと思いますが、PHPエンジニアだった僕はまだ慣れていないので、PHPのXdebugみたいなツールがほしかったです。
インターネットで調べた上で、ruby-debug-ideというツールを見つかって、設定してみたら、Xdebugみたいなリモートデバッグ機能が使えました。
今回はこのツールの設定方法について紹介させていただきます。

Rubyプラグインをインストールする

まず、VSCodeでRuby言語を開発するための拡張をインストールする
ruby extension.png

この拡張の詳細にruby-debug-ideデバッグのツールの設定方法を書いてあります。
debugger_ruby_ext.png

デバッグGemをインストールする

RubyバージョンによってGemが違います

Ruby 1.8.xの場合

gem install ruby-debug-ide
gem install ruby-debug-base

Ruby 1.9.xの場合

gem install ruby-debug-ide
gem install ruby-debug-base19x

Ruby 2.xの場合

gem install ruby-debug-ide
gem install debase

VSCodeの設定

VSCodeのデバッグタブを開いて、左側のサイドバーに「Add Configuration」を選択して、もし何もデバッグ設定がなければ選択ポップアップを表示されます。ここにRubyを選択してください。「Ruby」選択肢がなければ、どんな選択肢を選択しても大丈夫です。

launch.jsonを開いたら、configurationsの中に以下の設定を入れてください。

    {
      "name": "Debug Rails",
      "type": "Ruby",
      "request": "launch",
      "cwd": "${workspaceFolder}",
      "program": "${workspaceFolder}/bin/rails",
      "pathToRDebugIDE": "/home/trantan/.rbenv/versions/2.5.1/bin/rdebug-ide",
      "args": [

         "server"
      ]
    }
  • name: デバッガー名
  • type: プログラム言語(Ruby)
  • request: launchというのはVSCodeから実行する
  • cwd: 作業のディレクトリ
  • program: デバッグを開始する時に実行されるRubyスクリプト(Railsサーバーのデバッグなので、ここにはRailsコマンドです)
  • pathToRDebugIDE: オプションの設定です。(ruby-debug-ide gemのフルパスです)
  • args: 「program」実行するスクリプトの引数です。Railsサーバーをローンチするコマンドはrails serverなので、serverは引数です。もしホストや環境などというコマンドのオプションを追加する場合、ここに追加してください。

↑こちらは基本の設定です。
詳しい設定はこちらに参考してください。

デバッグしてみる

  • まず、デバッグのbreakpointを設定する
    ahii.png
    ファイルの改行数の左側にクリックすると、breakpointを設定できます。

  • 次、VSCodeのデバッグタブで左側のサイドバーに上の「Debug Rails」を選択して、「スタート」ボタンを押すと、デバッガーを開始します。
    start debug.png

ブラウザーでRailsのWebアプリを開いたら、デバッグできます。
demo rails.gif

デバッガーのリモートパネルです。
remote.png

左側の「Variables」部分に変数の値をチェックできます。
variables.png

おわりに

いかがでしょうか?
こんな簡単設定でVSCodeでRailsのデバッグは便利になりますね。
それではまた!

37
41
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
41