1. 25 8月, 2017 1 次提交
    • S
      Enable 5 lines of Sidekiq backtrace lines to aid in debugging · 38bb9219
      Stan Hu 提交于
      Customers often have Sidekiq jobs that failed without much context. Without
      Sentry, there's no way to tell where these exceptions were hit. Adding
      in additional lines adds a bit more Redis storage overhead. This commit
      adds in backtrace logging for workers that delete groups/projects and
      import/export projects.
      
      Closes #27626
      38bb9219
  2. 17 8月, 2017 1 次提交
  3. 01 8月, 2017 1 次提交
  4. 06 6月, 2017 1 次提交
  5. 05 4月, 2017 1 次提交
  6. 04 4月, 2017 1 次提交
  7. 22 10月, 2016 1 次提交
    • Y
      Re-organize queues to use for Sidekiq · 97731760
      Yorick Peterse 提交于
      Dumping too many jobs in the same queue (e.g. the "default" queue) is a
      dangerous setup. Jobs that take a long time to process can effectively
      block any other work from being performed given there are enough of
      these jobs.
      
      Furthermore it becomes harder to monitor the jobs as a single queue
      could contain jobs for different workers. In such a setup the only
      reliable way of getting counts per job is to iterate over all jobs in a
      queue, which is a rather time consuming process.
      
      By using separate queues for various workers we have better control over
      throughput, we can add weight to queues, and we can monitor queues
      better. Some workers still use the same queue whenever their work is
      related. For example, the various CI pipeline workers use the same
      "pipeline" queue.
      
      This commit includes a Rails migration that moves Sidekiq jobs from the
      old queues to the new ones. This migration also takes care of doing the
      inverse if ever needed. This does require downtime as otherwise new jobs
      could be scheduled in the old queues after this migration completes.
      
      This commit also includes an RSpec test that blacklists the use of the
      "default" queue and ensures cron workers use the "cronjob" queue.
      
      Fixes gitlab-org/gitlab-ce#23370
      97731760
  8. 24 8月, 2016 1 次提交
  9. 17 8月, 2016 1 次提交
    • Y
      Tracking of custom events · d345591f
      Yorick Peterse 提交于
      GitLab Performance Monitoring is now able to track custom events not
      directly related to application performance. These events include the
      number of tags pushed, repositories created, builds registered, etc.
      
      The use of these events is to get a better overview of how a GitLab
      instance is used and how that may affect performance. For example, a
      large number of Git pushes may have a negative impact on the underlying
      storage engine.
      
      Events are stored in the "events" measurement and are not prefixed with
      "rails_" or "sidekiq_", this makes it easier to query events with the
      same name triggered from different parts of the application. All events
      being stored in the same measurement also makes it easier to downsample
      data.
      
      Currently the following events are tracked:
      
      * Creating repositories
      * Removing repositories
      * Changing the default branch of a repository
      * Pushing a new tag
      * Removing an existing tag
      * Pushing a commit (along with the branch being pushed to)
      * Pushing a new branch
      * Removing an existing branch
      * Importing a repository (along with the URL we're importing)
      * Forking a repository (along with the source/target path)
      * CI builds registered (and when no build could be found)
      * CI builds being updated
      * Rails and Sidekiq exceptions
      
      Fixes gitlab-org/gitlab-ce#13720
      d345591f
  10. 03 6月, 2016 4 次提交
  11. 19 5月, 2016 1 次提交
  12. 23 2月, 2016 1 次提交
  13. 17 2月, 2016 1 次提交
  14. 26 1月, 2016 1 次提交
  15. 21 11月, 2015 1 次提交
  16. 18 11月, 2015 2 次提交
  17. 09 9月, 2015 1 次提交
  18. 24 8月, 2015 1 次提交
    • S
      Remove user OAuth tokens stored in database for Bitbucket, GitHub, and GitLab · ed1d4fa4
      Stan Hu 提交于
      and request them each session. Pass these tokens to the project import data.
      
      This prevents the need to encrypt these tokens and clear them in case they
      expire or get revoked.
      
      For example, if you deleted and re-created OAuth2 keys for Bitbucket, you would get
      an Error 500 with no way to recover:
      
      ```
      Started GET "/import/bitbucket/status" for x.x.x.x at 2015-08-07 05:24:10 +0000
      Processing by Import::BitbucketController#status as HTML
      Completed 500 Internal Server Error in 607ms (ActiveRecord: 2.3ms)
      
      NameError (uninitialized constant Import::BitbucketController::Unauthorized):
        app/controllers/import/bitbucket_controller.rb:77:in `rescue in go_to_bitbucket_for_permissions'
        app/controllers/import/bitbucket_controller.rb:74:in `go_to_bitbucket_for_permissions'
        app/controllers/import/bitbucket_controller.rb:86:in `bitbucket_unauthorized'
      ```
      
      Closes #1871
      ed1d4fa4
  19. 11 8月, 2015 2 次提交
  20. 17 7月, 2015 1 次提交
  21. 15 7月, 2015 1 次提交
  22. 03 4月, 2015 1 次提交
  23. 24 2月, 2015 2 次提交
  24. 06 2月, 2015 3 次提交
  25. 11 1月, 2015 1 次提交
  26. 03 10月, 2014 1 次提交
  27. 12 6月, 2014 1 次提交
  28. 13 3月, 2014 1 次提交
  29. 12 3月, 2014 1 次提交
  30. 08 11月, 2013 1 次提交
  31. 12 8月, 2013 1 次提交