Constants
| COLORS | = | { black: 30, red: 31, green: 32, yellow: 33, blue: 34, magenta: 35, cyan: 36, white: 37, }.freeze | ||
| USE_DEBUG_LOG | = | ENV.key?("HTTPX_DEBUG") |
Public Instance methods
log( level: @options.debug_level, color: nil, debug_level: @options.debug_level, debug: @options.debug, &msg )
[show source]
# File lib/httpx/loggable.rb 20 def log( 21 level: @options.debug_level, 22 color: nil, 23 debug_level: @options.debug_level, 24 debug: @options.debug, 25 &msg 26 ) 27 return unless debug_level >= level 28 29 debug_stream = debug || ($stderr if USE_DEBUG_LOG) 30 31 return unless debug_stream 32 33 klass = self.class 34 35 until (class_name = klass.name) 36 klass = klass.superclass 37 end 38 39 message = +"(time:#{Time.now.utc}, pid:#{Process.pid}, " \ 40 "tid:#{Thread.current.object_id}, " \ 41 "fid:#{Fiber.current.object_id}, " \ 42 "self:#{class_name}##{object_id}) " 43 message << msg.call << "\n" 44 message = "\e[#{COLORS[color]}m#{message}\e[0m" if color && debug_stream.respond_to?(:isatty) && debug_stream.isatty 45 debug_stream << message 46 end
log_exception(ex, level: @options.debug_level, color: nil, debug_level: @options.debug_level, debug: @options.debug)
[show source]
# File lib/httpx/loggable.rb 48 def log_exception(ex, level: @options.debug_level, color: nil, debug_level: @options.debug_level, debug: @options.debug) 49 log(level: level, color: color, debug_level: debug_level, debug: debug) { ex.full_message } 50 end
log_redact(text, should_redact)
[show source]
# File lib/httpx/loggable.rb 60 def log_redact(text, should_redact) 61 should_redact ||= @options.debug_redact == true 62 63 return text.to_s unless should_redact 64 65 "[REDACTED]" 66 end
log_redact_body(text)
[show source]
# File lib/httpx/loggable.rb 56 def log_redact_body(text) 57 log_redact(text, @options.debug_redact == :body) 58 end
log_redact_headers(text)
[show source]
# File lib/httpx/loggable.rb 52 def log_redact_headers(text) 53 log_redact(text, @options.debug_redact == :headers) 54 end