gitlab-org--gitlab-foss/app/controllers/sherlock
Yorick Peterse dec3e4ce64 Added Sherlock, a custom profiling tool for GitLab
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`.
2015-11-09 14:29:10 +01:00
..
application_controller.rb Added Sherlock, a custom profiling tool for GitLab 2015-11-09 14:29:10 +01:00
file_samples_controller.rb Added Sherlock, a custom profiling tool for GitLab 2015-11-09 14:29:10 +01:00
queries_controller.rb Added Sherlock, a custom profiling tool for GitLab 2015-11-09 14:29:10 +01:00
transactions_controller.rb Added Sherlock, a custom profiling tool for GitLab 2015-11-09 14:29:10 +01:00