Class: Wavefront::Logger
- Inherits:
-
Object
- Object
- Wavefront::Logger
- Defined in:
- lib/wavefront-sdk/core/logger.rb
Overview
Log to a user-supplied Ruby logger, or to standard output.
Instance Attribute Summary collapse
-
#debug ⇒ Object
readonly
Returns the value of attribute debug.
-
#logger ⇒ Object
readonly
Returns the value of attribute logger.
-
#verbose ⇒ Object
readonly
Returns the value of attribute verbose.
Instance Method Summary collapse
- #format_message(level, msg) ⇒ Object
-
#initialize(opts = {}) ⇒ Logger
constructor
A new instance of Logger.
-
#log(msg, level = :info) ⇒ Object
Send a message to a Ruby logger object if the user supplied one, or print to standard out if not.
- #print_debug_message(msg) ⇒ Object
- #print_error_message(msg) ⇒ Object
- #print_info_message(msg) ⇒ Object
- #print_message(level, msg) ⇒ Object
- #print_warn_message(msg) ⇒ Object
Constructor Details
#initialize(opts = {}) ⇒ Logger
Returns a new instance of Logger.
12 13 14 15 16 |
# File 'lib/wavefront-sdk/core/logger.rb', line 12 def initialize(opts = {}) @logger = opts[:logger] || nil @verbose = opts[:verbose] || nil @debug = opts[:debug] || nil end |
Instance Attribute Details
#debug ⇒ Object (readonly)
Returns the value of attribute debug.
8 9 10 |
# File 'lib/wavefront-sdk/core/logger.rb', line 8 def debug @debug end |
#logger ⇒ Object (readonly)
Returns the value of attribute logger.
8 9 10 |
# File 'lib/wavefront-sdk/core/logger.rb', line 8 def logger @logger end |
#verbose ⇒ Object (readonly)
Returns the value of attribute verbose.
8 9 10 |
# File 'lib/wavefront-sdk/core/logger.rb', line 8 def verbose @verbose end |
Instance Method Details
#format_message(level, msg) ⇒ Object
47 48 49 |
# File 'lib/wavefront-sdk/core/logger.rb', line 47 def (level, msg) format('SDK %<level>s: %<msg>s', level: level.to_s.upcase, msg: msg) end |
#log(msg, level = :info) ⇒ Object
Send a message to a Ruby logger object if the user supplied one, or print to standard out if not.
26 27 28 29 30 31 32 |
# File 'lib/wavefront-sdk/core/logger.rb', line 26 def log(msg, level = :info) if logger logger.send(level, msg) else (level, msg) end end |
#print_debug_message(msg) ⇒ Object
51 52 53 |
# File 'lib/wavefront-sdk/core/logger.rb', line 51 def (msg) puts msg if debug end |
#print_error_message(msg) ⇒ Object
63 64 65 |
# File 'lib/wavefront-sdk/core/logger.rb', line 63 def (msg) warn msg end |
#print_info_message(msg) ⇒ Object
55 56 57 |
# File 'lib/wavefront-sdk/core/logger.rb', line 55 def (msg) puts msg if debug || verbose end |
#print_message(level, msg) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/wavefront-sdk/core/logger.rb', line 34 def (level, msg) method = format('print_%<level>s_message', level: level).to_sym msg = (level, msg) if respond_to?(:method) send(method, msg) else (format('undefined message level:%<level>s', level: level)) (msg) end end |
#print_warn_message(msg) ⇒ Object
59 60 61 |
# File 'lib/wavefront-sdk/core/logger.rb', line 59 def (msg) warn msg end |