Module: Logger::Limit

Included in:
Logger
Defined in:
lib/logger/limit.rb,
lib/logger/limit/version.rb

Constant Summary collapse

VERSION =
'0.1.0'
@@storage =

rubocop:disable Style/ClassVars

[]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.clear_stored_logsObject



28
29
30
# File 'lib/logger/limit.rb', line 28

def clear_stored_logs
  @@storage.clear
end

Instance Method Details

#add(*args, &block) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/logger/limit.rb', line 10

def add(*args, &block)
  severity = args.first

  if severity < Logger::ERROR
    @@storage << { args: args, block: block }
  else
    @@storage.each do |stored_log|
      super(*stored_log[:args], &stored_log[:block])
    end

    clear_stored_logs

    super
  end
end