mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-11 05:36:07 +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`.
20 lines
410 B
Ruby
20 lines
410 B
Ruby
module Sherlock
|
|
class TransactionsController < Sherlock::ApplicationController
|
|
def index
|
|
@transactions = Gitlab::Sherlock.collection.newest_first
|
|
end
|
|
|
|
def show
|
|
@transaction = Gitlab::Sherlock.collection.find_transaction(params[:id])
|
|
|
|
render_404 unless @transaction
|
|
end
|
|
|
|
def destroy_all
|
|
Gitlab::Sherlock.collection.clear
|
|
|
|
redirect_to(:back)
|
|
end
|
|
end
|
|
end
|