summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/workers/all_queues.yml1
-rw-r--r--app/workers/sentry_worker.rb8
-rw-r--r--changelogs/unreleased/sh-sentry-async.yml5
-rw-r--r--config/initializers/sentry.rb3
-rw-r--r--config/sidekiq_queues.yml2
5 files changed, 18 insertions, 1 deletions
diff --git a/app/workers/all_queues.yml b/app/workers/all_queues.yml
index b6433eb3eff..30b50986973 100644
--- a/app/workers/all_queues.yml
+++ b/app/workers/all_queues.yml
@@ -108,6 +108,7 @@
- repository_fork
- repository_import
- repository_remove_remote
+- sentry
- storage_migrator
- system_hook_push
- update_merge_requests
diff --git a/app/workers/sentry_worker.rb b/app/workers/sentry_worker.rb
new file mode 100644
index 00000000000..4420db894d7
--- /dev/null
+++ b/app/workers/sentry_worker.rb
@@ -0,0 +1,8 @@
+class SentryWorker
+ include ApplicationWorker
+
+ def perform(event_hash)
+ # Sidekiq has converted the argument back into a Ruby hash object
+ Raven.send_event(event_hash) # send_event takes a hash or a Raven::Event.
+ end
+end
diff --git a/changelogs/unreleased/sh-sentry-async.yml b/changelogs/unreleased/sh-sentry-async.yml
new file mode 100644
index 00000000000..4abaac68ce1
--- /dev/null
+++ b/changelogs/unreleased/sh-sentry-async.yml
@@ -0,0 +1,5 @@
+---
+title: Move Sentry notifications to a Sidekiq process
+merge_request:
+author:
+type: performance
diff --git a/config/initializers/sentry.rb b/config/initializers/sentry.rb
index 17d09293205..cbfa6ab5cc1 100644
--- a/config/initializers/sentry.rb
+++ b/config/initializers/sentry.rb
@@ -20,6 +20,9 @@ def configure_sentry
# Sanitize authentication headers
config.sanitize_http_headers = %w[Authorization Private-Token]
config.tags = { program: Gitlab::Sentry.program_context }
+ config.async = lambda do |event|
+ SentryWorker.perform_async(event)
+ end
end
end
end
diff --git a/config/sidekiq_queues.yml b/config/sidekiq_queues.yml
index e1e8f36b663..3f84d0e0d63 100644
--- a/config/sidekiq_queues.yml
+++ b/config/sidekiq_queues.yml
@@ -75,4 +75,4 @@
- [pipeline_background, 1]
- [repository_update_remote_mirror, 1]
- [repository_remove_remote, 1]
-
+ - [sentry, 1]