Rails Trace

What code runs when you request a page from a Ruby on Rails application?

Here is an annotated trace showing every method call within Rails and its dependencies. It is for an example application that loads a blog post from the database and renders a page containing the post's title.

Scroll to see the trace

Rack Middlewares

Rack is an interface that says how web servers can talk to web applications like Rails. It also allows Rack Middlewares to be used to perform actions based on the request such as caching, logging or modifying HTTP headers.

An example of one of the many middlewares that Rails uses is Rack::Sendfile. This helps serve files from disk efficiently by making use of the X-Sendfile header.

You can read more about Rack and learn how Rails uses it.

Created by Chris Zetter in a tribute to Rails and its many contributors.

Read out more about how the trace was made.

You can see the code that powers this page and suggest resources to link to on GitHub.