0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

最近よく使うRailsのデバッグについて

0
Last updated at Posted at 2026-02-27

はじめに

こんにちは、ソナーのタルイシです。
デバックについて自分の中で整理できていなかったので、
最近使った方法と一緒にデバックについてまとめます!

デバッグとは

debug(デバッグ)= 不具合の原因を特定する作業。
実際にやっていることは、
・値の確認
・想定との差分の確認
・処理の流れの確認

つまり、
「想定と現実の差分を探す作業」だと今は理解しています。

Viewでのデバッグ(結果を見る)

エラーが出たとき、
まずやっているのは「出してみる」こと。

◆オブジェクトを丸ごと確認

qiita.rb
<%= debug @users %>

ここで確認しているのは、
「そもそもnilじゃないか」「何件入っているか」「想定しているカラムがあるか」
データがある前提で考えてしまう癖があるので、
まず前提を疑うように癖図づけを行っています。

◆値だけ確認

qiita.rb
<%= @user.name %>
<%= params[:id] %>

ここで確認しているのは、
「想定している値が入っているか」「paramsがちゃんと届いているか」を確認しています。

Controllerでのデバッグ(原因を見る)

◆puts でログに出す

qiita.rb
def index
  puts params[:id]
end

◆Rails.logger を使う

qiita.rb
def index
  Rails.logger.debug params.inspect
  Rails.logger.debug @blob
  #Rails.logger.ログレベル 表示したいもの
end

paramsの中身についても、つい無意識に届いている前提で書いてしまうことが多いと感じています。
そのため、意識して確認するようにしています。

※puts や Rails.logger.debug の出力は Rails サーバーを起動しているターミナルに表示される。
ただし、私は Docker を使ってバックグラウンド起動(-d オプション)しているため、直接ターミナルには表示されない。
そのため、ログの確認は次のコマンドで行っている。

$ docker compose logs -f

最後に

必要に応じて適切な確認ができるよう、
値や処理の流れを丁寧に追いながら経験を積み重ねていきたいと思います。

※ この記事は新人研修の一環です

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?