Class: BuilderApm::DashboardController

Inherits:
ApplicationController show all
Defined in:
app/controllers/builder_apm/dashboard_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#redis_client

Instance Method Details

#indexObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/builder_apm/dashboard_controller.rb', line 3

def index
  if params[:clear] == 'true'
    keys = redis_client.zrange("builder_apm:timestamps", 0, -1)
  
    keys = keys.map { |key| "builder_apm:Request:#{key}" }
    # Delete base keys
    redis_client.pipelined do |pipeline|
      pipeline.del("builder_apm:timestamps")
      pipeline.del("builder_apm:errors")
      pipeline.del("builder_apm:n_plus_one")
      pipeline.del("builder_apm:slow")
    end
    debugger
    # Delete keys in chunks
    keys.each_slice(1000) do |key_chunk|
      redis_client.del(*key_chunk) unless key_chunk.empty?
    end
  end
end