Request Details

Route
/slow GET
Timestamp
Sep 22, 2026 2:13 PM
Duration
217.39 ms
Status
200
Response Size
70 KB
Error
No

Performance Breakdown

Database
9.8% (13 queries)
View Rendering
9.9%
Application Logic
80.3%
Other Operations
0.0%
Total Operations
29
Slowest Operation
217.39 ms

Request Trace

How to read this

Each row is a layer of your stack. Many short Database bars means N+1 queries — fix with includes(). A wide Action bar with little Database time means slow Ruby code. A wide View bar usually means a partial rendered in a loop.

Action
View
Database
Other
Action
View
Database
0.0ms 541.5ms 1083.0ms 1624.6ms 2166.1ms

Operations

How to use this

Sort by Impact to find your biggest wins. Click any row for details and optimisation suggestions. The same SQL appearing multiple times is an N+1 — fix with includes(). A single operation above 50% impact is your highest priority.

Operation Duration Impact Timeline Actions
home/index 15 ms 6.9%
SELECT * FROM comments WHERE post_id = ? ORDER BY created_at DESC LIMIT ? 12 ms 5.5%
SELECT * FROM posts WHERE title LIKE ? AND content LIKE ? AND LOWER(title) LIKE ? AND UPPER(content) LIKE ? 11 ms 5.1%
SELECT COUNT(*) FROM comments WHERE post_id = ? 18 ms 8.3%
home#slow 217 ms 100.0%
home/index 37 ms 17.0%
home#slow 217 ms 100.0%
SELECT posts.title, posts.content, users.name FROM posts JOIN users ON posts.user_id = users.id WHERE posts.published = ? 33 ms 15.2%
SELECT DISTINCT users.*, posts.*, comments.* FROM users, posts, comments WHERE users.id = posts.user_id AND posts.id = comments.post_id AND users.created_at > ? AND posts.created_at > ? AND comments.created_at > ? 22 ms 10.1%
SELECT * FROM (SELECT users.id, users.name, users.email, COUNT(posts.id) as post_count FROM users LEFT JOIN posts ON users.id = posts.user_id WHERE users.active = ? GROUP BY users.id) as user_posts JOIN (SELECT user_id, COUNT(*) as comment_count FROM c... 3 ms 1.4%
SELECT * FROM (SELECT users.id, users.name, users.email, COUNT(posts.id) as post_count FROM users LEFT JOIN posts ON users.id = posts.user_id WHERE users.active = ? GROUP BY users.id) as user_posts JOIN (SELECT user_id, COUNT(*) as comment_count FROM c... 7 ms 3.2%
posts/show 24 ms 11.0%
layouts/application 27 ms 12.4%
layouts/application 15 ms 6.9%
users/index 40 ms 18.4%
home#slow 217 ms 100.0%
users/index 36 ms 16.6%
home#slow 217 ms 100.0%
SELECT * FROM posts WHERE created_at > ? 27 ms 12.4%
home#slow 217 ms 100.0%
home#slow 217 ms 100.0%
SELECT users.*, COUNT(DISTINCT posts.id) as post_count, COUNT(DISTINCT comments.id) as comment_count, SUM(posts.view_count) as total_views, AVG(posts.view_count) as avg_views, MIN(posts.created_at) as first_post, MAX(posts.created_at) as latest_post FR... 28 ms 12.9%
SELECT users.* FROM users LEFT JOIN posts ON users.id = posts.user_id LEFT JOIN comments ON posts.id = comments.post_id WHERE users.active = ? AND posts.published = ? AND comments.approved = ? OR users.created_at > ? AND posts.created_at > ? AND commen... 3 ms 1.4%
posts/show 21 ms 9.7%
SELECT users.*, COUNT(DISTINCT posts.id) as post_count, COUNT(DISTINCT comments.id) as comment_count, SUM(posts.view_count) as total_views, AVG(posts.view_count) as avg_views, MIN(posts.created_at) as first_post, MAX(posts.created_at) as latest_post FR... 18 ms 8.3%
SELECT * FROM comments WHERE post_id = ? ORDER BY created_at DESC LIMIT ? 24 ms 11.0%
home#slow 217 ms 100.0%
SELECT users.*, posts.*, comments.*, COUNT(DISTINCT posts.id) as post_count, COUNT(DISTINCT comments.id) as comment_count, AVG(posts.view_count) as avg_views, MAX(comments.created_at) as latest_comment FROM users LEFT JOIN posts ON users.id = posts.use... 6 ms 2.8%
home#slow 217 ms 100.0%