A Performance Bar can be displayed, to dig into the performance of a page. When activated, it looks as follows:
It allows you to see (from left to right):
- the current host serving the page
- the timing of the page (backend, frontend)
- time taken and number of DB queries, click through for details of these queries
- time taken and number of Gitaly calls, click through for details of these calls
- profile of the code used to generate the page, line by line. In the profile view, the numbers in the left panel represent wall time, cpu time, and number of calls (based on rblineprof).
- time taken and number of calls to Redis
- time taken and number of background jobs created by Sidekiq
- time taken and number of Ruby GC calls
On the far right is a request selector that allows you to view the same metrics (excluding the page timing and line profiler) for any requests made while the page was open. Only the first two requests per unique URL are captured.
GitLab Performance Bar is disabled by default. To enable it for a given group,
navigate to the Admin area in Settings > Metrics and Profiling > Profiling - Performance bar
The only required setting you need to set is the full path of the group that will be allowed to display the Performance Bar. Make sure Enable the Performance Bar is checked and hit Save to save the changes.
Once the Performance Bar is enabled, you will need to press the p + b keyboard shortcut to actually display it.
You can toggle the Bar using the same shortcut.