Commit Graph

8 Commits

Author SHA1 Message Date
Stan Hu 266ba11ed7 Fix Profiler to work with Ruby 5.1
Ruby 5.1 now requires keyword arguments to pass along parameters and
headers for ActionDispatch::Integration::RequestHelpers.

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/61051
2019-04-26 21:22:23 -07:00
João Cunha 4c974f50f6 Get rid of ScheduleInstallationService
- deletes schedule_installation_service.rb
- moves schedule_installation_service.rb logic to create_service.rb
- moves specs as well

Removes code duplication

Remove unecessary spec block

Abide review suggestions

Test installable applications which are not associated to a cluster

Fix a typo

Removes duplciated expectation

Reuse variable instead of redefining

Remove method in favor of a local scoped lambda

Improve 'failing service' shared examples

Test the increase of status count

Remove duplicated test

Enable fronzen literal
2019-02-26 16:44:31 +00:00
Sean McGivern f1a7e7fea1 Allow profiler to authenticate by stubbing users directly
Previously, we used a personal access token. This had a couple of
problems:

1. If the user didn't have a PAT, we couldn't impersonate them.
2. It depended on reading the raw PAT from the database.

Instead, we can monkey-patch the authentication methods on
ApplicationController (overriding the Devise ones), and remove them once
we're done. This does mean that profiles will not profile auth
correctly, so for that, use a PAT directly.
2018-11-26 11:18:03 +00:00
Sean McGivern d304f88352 Expose a clean_backtrace method from Gitlab::Profiler
This method makes it easier for other parts of the app to get clean backtraces,
as well as console users.
2018-06-15 13:29:55 +01:00
Sean McGivern e236180618 Add query counts by model to profiler output 2018-03-21 17:18:33 +00:00
Sean McGivern 68f8a798f2 Include the ee/ directory in backtraces 2018-03-12 10:14:52 +00:00
Dylan Griffith bda4f0811e Improve error handling for Gitlab::Profiler and improve doc about providing a user 2018-02-16 19:47:44 +11:00
Sean McGivern b16c0080ac Add Gitlab::Profiler for profiling from a console or runner
Gitlab::Profiler.profile takes a URL to profile, and returns the ruby-prof
profile result.

This is currently only for interactive use (in a console) or from the script
runner. Note that when using this interactively, changes to the application
within that console session will be used, so this can be used to test proposed
performance changes.
2018-01-19 12:31:54 +00:00