Class: ActiveStorageSilentLogs::SilentLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/active_storage_silent_logs/silent_logger.rb

Constant Summary collapse

KEY =
'active_storage_silent_logs.old_level'.freeze
FORMAT =
/rails\/active_storage/.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ SilentLogger

Returns a new instance of SilentLogger.



8
9
10
11
# File 'lib/active_storage_silent_logs/silent_logger.rb', line 8

def initialize(app)
  @app   = app
  @level = Rails.logger.level
end

Instance Attribute Details

#levelObject (readonly)

Returns the value of attribute level.



6
7
8
# File 'lib/active_storage_silent_logs/silent_logger.rb', line 6

def level
  @level
end

Instance Method Details

#call(env) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/active_storage_silent_logs/silent_logger.rb', line 13

def call(env)
  if skip?(env)
    tssss(env) { @app.call(env) }
  else
    @app.call(env)
  end
end

#tssss(env) ⇒ Object



21
22
23
24
25
26
27
28
# File 'lib/active_storage_silent_logs/silent_logger.rb', line 21

def tssss(env)
  begin
    Rails.logger.level = Logger::ERROR
    yield
  ensure
    Rails.logger.level = level
  end
end