Class: Tenable::Middleware::Logging

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/tenable/middleware/logging.rb

Constant Summary collapse

API_KEY_PATTERN =
/accessKey=[^;]*;?\s*secretKey=[^;]*/

Instance Method Summary collapse

Constructor Details

#initialize(app, logger: nil) ⇒ Logging

Returns a new instance of Logging.



8
9
10
11
# File 'lib/tenable/middleware/logging.rb', line 8

def initialize(app, logger: nil)
  super(app)
  @logger = logger
end

Instance Method Details

#call(env) ⇒ Object



13
14
15
16
17
18
19
20
21
# File 'lib/tenable/middleware/logging.rb', line 13

def call(env)
  log_request(env) if @logger
  @app.call(env).on_complete do |response_env|
    log_response(response_env) if @logger
  end
rescue StandardError => e
  @logger&.error("Tenable request error: #{e.message}")
  raise
end