mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-10 05:06:46 +10:00
Sherlock will be a new GitLab specific tool for measuring the
performance of Rails requests (and SideKiq jobs at some point). Some of
the things that are currently tracked:
* SQL queries along with their timings, backtraces and query plans
(using "EXPLAIN ANALYZE" for PostgreSQL and regular "EXPLAIN" for
MySQL)
* Timings of application files (including views) on a per line basis
* Some meta data such as the request method, path, total duration, etc
More tracking (e.g. Rugged or gitlab-shell timings) might be added in
the future.
Sherlock will replace any existing tools we have used so far (e.g.
active_record_query_trace and rack-mini-profiler), hence the
corresponding Gems have been removed from the Gemfile.
Sherlock can be enabled by starting Rails as following:
ENABLE_SHERLOCK=1 bundle exec rails s
Recorded transactions can be found at `/sherlock/transactions`.
13 lines
299 B
Ruby
13 lines
299 B
Ruby
module Sherlock
|
|
class ApplicationController < ::ApplicationController
|
|
before_action :find_transaction
|
|
|
|
def find_transaction
|
|
if params[:transaction_id]
|
|
@transaction = Gitlab::Sherlock.collection.
|
|
find_transaction(params[:transaction_id])
|
|
end
|
|
end
|
|
end
|
|
end
|