2016-11-03 12:29:30 +05:30
# Request Profiling
## Procedure
2019-02-15 15:39:39 +05:30
1. Grab the profiling token from **Monitoring > Requests Profiles** admin page
(highlighted in a blue in the image below).
![Profile token ](img/request_profiling_token.png )
2019-10-12 21:52:04 +05:30
1. Pass the header `X-Profile-Token: <token>` and `X-Profile-Mode: <mode>` (where < mode > can be `execution` or `memory` ) to the request you want to profile. You can use:
2019-02-15 15:39:39 +05:30
- Browser extensions. For example, [ModHeader ](https://chrome.google.com/webstore/detail/modheader/idgpnmonknjnojddfkpgkljpfnnfcklj ) Chrome extension.
2019-10-12 21:52:04 +05:30
- `curl` . For example, `curl --header 'X-Profile-Token: <token>' --header 'X-Profile-Mode: <mode>' https://gitlab.example.com/group/project` .
2016-11-03 12:29:30 +05:30
1. Once request is finished (which will take a little longer than usual), you can
2019-02-15 15:39:39 +05:30
view the profiling output from **Monitoring > Requests Profiles** admin page.
![Profiling output ](img/request_profile_result.png )
2016-11-03 12:29:30 +05:30
## Cleaning up
2019-02-15 15:39:39 +05:30
2016-11-03 12:29:30 +05:30
Profiling output will be cleared out every day via a Sidekiq worker.