Best Ways to Debug a Ruby on Rails Application

Even if you’re the best Rails developer in the world, you are going to have to debug your code from time to time. With other frameworks, this is a very frustrating process, but that isn’t the case with Ruby on Rails.

large

Even if you’re the best Rails developer in the world, you are going to have to debug your code from time to time. With other frameworks, this is a very frustrating process, but that isn’t the case with Ruby on Rails. Rails makes it easy to debug your code, so you can limit your downtime and get your applications up and running.

Pry Debugger

large

The Pry Debugger gem is a top option for web developers. Once you install this gem, you can access the binding.pry feature. Just add binding.pry into a line of your source code. Then, whenever it executes the line, Pry will open up and inspect the program while pausing the script. This makes it easy to find issues quickly .

Pry also comes with others features, including syntax highlighting, code indentation, and more. With so much to offer, this gem is definitely worth checking out.

Better Errors

While Rails has an error page in place, that page is limited in what it has to offer. Add the Better Errors gem so you will know any time your code has an error. Then you can look for the reason behind the error and search for a solution.

Better Errors inspects all of the source code for all stack frames and has full stack trace. It also has both local and instance variable inspection, as well as live REPL on each of the stack frames. All of these tools make it easy to find the errors in your code.

Byebug

The Byebug gem is full of features that will help you debug your code. It includes stepping, which allows it to run a program one line at a time. The breaking feature allows it to pause to examine a current line of code or feature, while the tracking option keeps track of different variables and lines. It also has REPL functionality.

IDE

large

Depending on what IDE you're using, it may also ship with built in debugging tools. I'll typically use Sublime Text, which doesn't come with debugging functionality. However if you use RubyMine you will have a full suite of ways to debug an application. This may be a good option if you came from using IDEs such as Eclipse.

Use Rake

A software task management tool, Rake makes it easy to look under the hood to find out what is going on with Rails applications. Start by using Rake to access all of the application’s public commands. You can do this with the rake -T command. In most cases, all of the commands will work, but if they fail, enter the -- trace command. That way, you can see what is going on with Rake behind the scenes. This will help you find the cause of the errors.

You can also use other Rake commands when looking for and fixing errors. Use:

  • Rake middleware
  • Rake routes
  • Rake tmp:clear
  • Rake assets:clean
  • Rake assets:clobber

Debugging doesn’t have to be frustrating. Use one of these tools so you can debug your application with ease. Then you can use your extra time to create your next program, which just might be your masterpiece.

Jordan Hudgens

Jordan Hudgens

I've been a software engineer for the past decade and have traveled the world building applications and training individuals on a wide variety of topics.


View All Posts