Class: Console::Logger
- Inherits:
-
Object
- Object
- Console::Logger
- Extended by:
- Fiber::Local
- Defined in:
- lib/console/logger.rb
Constant Summary collapse
- DEFAULT_LEVEL =
1
Class Method Summary collapse
-
.default_log_level(env = ENV) ⇒ Object
Set the default log level based on ‘$DEBUG` and `$VERBOSE`.
- .default_logger(output, verbose: self.verbose?, level: self.default_log_level) ⇒ Object
- .local ⇒ Object
-
.verbose?(env = ENV) ⇒ Boolean
Controls verbose output using ‘$VERBOSE`.
Instance Method Summary collapse
- #failure(subject, exception, *arguments, &block) ⇒ Object
-
#initialize(output, **options) ⇒ Logger
constructor
A new instance of Logger.
- #measure(subject, name = "block", **tags, &block) ⇒ Object
- #progress(subject, total, **options) ⇒ Object
Constructor Details
#initialize(output, **options) ⇒ Logger
Returns a new instance of Logger.
69 70 71 |
# File 'lib/console/logger.rb', line 69 def initialize(output, **) super(output, **) end |
Class Method Details
.default_log_level(env = ENV) ⇒ Object
Set the default log level based on ‘$DEBUG` and `$VERBOSE`. You can also specify CONSOLE_LEVEL=debug or CONSOLE_LEVEL=info in environment. mislav.net/2011/06/ruby-verbose-mode/ has more details about how it all fits together.
37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/console/logger.rb', line 37 def self.default_log_level(env = ENV) if level = (env['CONSOLE_LEVEL'] || env['CONSOLE_LOG_LEVEL']) LEVELS[level.to_sym] || level.to_i elsif $DEBUG DEBUG elsif $VERBOSE.nil? WARN else INFO end end |
.default_logger(output, verbose: self.verbose?, level: self.default_log_level) ⇒ Object
54 55 56 57 58 59 60 61 |
# File 'lib/console/logger.rb', line 54 def self.default_logger(output, verbose: self.verbose?, level: self.default_log_level) terminal = Terminal::Logger.new(output, verbose: verbose) logger = self.new(terminal, verbose: verbose, level: level) Resolver.default_resolver(logger) return logger end |
.local ⇒ Object
63 64 65 |
# File 'lib/console/logger.rb', line 63 def self.local self.default_logger($stderr) end |
.verbose?(env = ENV) ⇒ Boolean
Controls verbose output using ‘$VERBOSE`.
50 51 52 |
# File 'lib/console/logger.rb', line 50 def self.verbose?(env = ENV) !$VERBOSE.nil? || env['CONSOLE_VERBOSE'] end |
Instance Method Details
#failure(subject, exception, *arguments, &block) ⇒ Object
87 88 89 |
# File 'lib/console/logger.rb', line 87 def failure(subject, exception, *arguments, &block) fatal(subject, *arguments, Event::Failure.new(exception), &block) end |