Module: Panda::Core::Debug
- Defined in:
- lib/panda/core/debug.rb
Class Method Summary collapse
-
.enable_http_debug! ⇒ Object
Enable HTTP debugging for Net::HTTP requests.
-
.enabled? ⇒ Boolean
Check if debug mode is enabled via PANDA_DEBUG environment variable.
-
.inspect(object, label: nil, prefix: "PANDA") ⇒ Object
Log an object with pretty printing (using awesome_print if available).
-
.log(message, prefix: "PANDA") ⇒ Object
Log a debug message if debug mode is enabled.
Class Method Details
.enable_http_debug! ⇒ Object
Enable HTTP debugging for Net::HTTP requests
37 38 39 40 41 42 43 |
# File 'lib/panda/core/debug.rb', line 37 def enable_http_debug! return unless enabled? || ENV["DEBUG_HTTP"].to_s.downcase == "true" require "net/http" Net::HTTP.set_debug_output($stdout) log("HTTP debugging enabled - all HTTP requests will be logged") end |
.enabled? ⇒ Boolean
Check if debug mode is enabled via PANDA_DEBUG environment variable
8 9 10 |
# File 'lib/panda/core/debug.rb', line 8 def enabled? ENV["PANDA_DEBUG"].to_s.downcase == "true" || ENV["PANDA_DEBUG"] == "1" end |
.inspect(object, label: nil, prefix: "PANDA") ⇒ Object
Log an object with pretty printing (using awesome_print if available)
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/panda/core/debug.rb', line 21 def inspect(object, label: nil, prefix: "PANDA") return unless enabled? = Time.current.strftime("%Y-%m-%d %H:%M:%S") header = label ? "#{label}: " : "" puts "\n[#{prefix} DEBUG #{}] #{header}" if defined?(AwesomePrint) ap object else pp object end puts end |
.log(message, prefix: "PANDA") ⇒ Object
Log a debug message if debug mode is enabled
13 14 15 16 17 18 |
# File 'lib/panda/core/debug.rb', line 13 def log(, prefix: "PANDA") return unless enabled? = Time.current.strftime("%Y-%m-%d %H:%M:%S") puts "[#{prefix} DEBUG #{}] #{}" end |