Sherlock, a new GitLab specific profiling tool
This is still very much a work in progress. No documentation and/or tests have been added yet, the UI is super rough, and the name might also still change.
Those wanting to try this out can checkout the branch and then start Rails by running:
ENABLE_SHERLOCK=1 bundle exec rails s
Recorded transactions can be found at /sherlock/transactions
, Sherlock's own routes are not tracked.
Merge request reports
Activity
- Edited by Yorick Peterse
CC'ing the following people that might be interested in this: @DouweM @rspeicher @jacobvosmaer @dzaporozhets @haynes
@yorickpeterse Looks awesome! Are you planning to extract this to a gem?
@rspeicher No, not any time soon.
Added 145 commits:
- c4917295...bd54bf7a - 137 commits from branch
master
- dec3e4ce - Added Sherlock, a custom profiling tool for GitLab
- 265ef867 - Added specs and source documentation for Sherlock
- 126a2428 - Updated profiling guides for Sherlock
- db46d49c - Fixed Hash key style in Sherlock::Query spec
- cdaa9744 - Added navigation link to Sherlock
- 7b5fd874 - Track the amount of times views are rendered
- 7f9f0702 - Truncate transaction paths to 70 characters
- 68843a53 - Added changelog entry for Sherlock
Toggle commit list- c4917295...bd54bf7a - 137 commits from branch
After adding some extra icing on the cake I'm pretty satisfied with how this is currently set up. Prior to the latest commit (which is just a changelog commit) the specs all passed, so I'll merge this.
Tracking of N+1 queries is currently not supported, though the Bullet gem is still present and can still be used. Once I have a need for this I'll add this to Sherlock as well.
mentioned in commit 26344c8f
mentioned in issue #3222 (closed)
mentioned in issue #3935 (closed)