summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Neel <brian@gitlab.com>2016-11-18 13:45:52 -0500
committerBrian Neel <brian@gitlab.com>2016-11-18 15:05:22 -0500
commite14bb160ac8756d663a1397de4482f02fd738e1e (patch)
treee3d1cbc259ee699d73475688961ae8fd38cd65bf
parent0e0f1dea089197fc3520ca3f520f6fff42417af3 (diff)
downloadgitlab-ce-add-logging-to-rack-attack.tar.gz
Add logging for rack attack eventsadd-logging-to-rack-attack
-rw-r--r--changelogs/unreleased/rack_attack_logging.yml4
-rw-r--r--config/initializers/rack_attack_logging.rb7
2 files changed, 11 insertions, 0 deletions
diff --git a/changelogs/unreleased/rack_attack_logging.yml b/changelogs/unreleased/rack_attack_logging.yml
new file mode 100644
index 00000000000..c0d6c1fd12e
--- /dev/null
+++ b/changelogs/unreleased/rack_attack_logging.yml
@@ -0,0 +1,4 @@
+---
+title: Add logging for rack attack events to production.log
+merge_request:
+author:
diff --git a/config/initializers/rack_attack_logging.rb b/config/initializers/rack_attack_logging.rb
new file mode 100644
index 00000000000..8bb9ea29c33
--- /dev/null
+++ b/config/initializers/rack_attack_logging.rb
@@ -0,0 +1,7 @@
+# Adds logging for all Rack Attack blocks and throttling events.
+
+ActiveSupport::Notifications.subscribe('rack.attack') do |name, start, finish, request_id, req|
+ if [:throttle, :blacklist].include? req.env['rack.attack.match_type']
+ Rails.logger.info("Rack_Attack: #{req.env['rack.attack.match_type']} #{req.ip} #{req.request_method} #{req.fullpath}")
+ end
+end