Module: I18n::Processes::Logging
- Included in:
- BaseProcess, CLI, Command::Commander, Data::FileSystemBase, Reports::Base, Scanners::Files::FileFinder
- Defined in:
- lib/i18n/processes/logging.rb
Constant Summary collapse
- MUTEX =
Mutex.new
- PROGRAM_NAME =
File.basename($PROGRAM_NAME)
Class Method Summary collapse
- .log_error(message) ⇒ Object
- .log_stderr(*args) ⇒ Object
- .log_verbose(message = nil) ⇒ Object
- .log_warn(message) ⇒ Object
- .program_name ⇒ Object
- .warn_deprecated(message) ⇒ Object
Class Method Details
.log_error(message) ⇒ Object
21 22 23 |
# File 'lib/i18n/processes/logging.rb', line 21 def log_error() log_stderr Rainbow("#{program_name}: #{message}").red.bright end |
.log_stderr(*args) ⇒ Object
25 26 27 28 29 30 31 32 |
# File 'lib/i18n/processes/logging.rb', line 25 def log_stderr(*args) MUTEX.synchronize do # 1. We don't want output from different threads to get intermixed. # 2. StringIO is currently not thread-safe (blows up) on JRuby: # https://github.com/jruby/jruby/issues/4417 $stderr.puts(*args) end end |
.log_verbose(message = nil) ⇒ Object
13 14 15 |
# File 'lib/i18n/processes/logging.rb', line 13 def log_verbose( = nil) log_stderr Rainbow( || yield).blue.bright if ::I18n::Processes.verbose? end |
.log_warn(message) ⇒ Object
17 18 19 |
# File 'lib/i18n/processes/logging.rb', line 17 def log_warn() log_stderr Rainbow("#{program_name}: [WARN] #{message}").yellow end |
.program_name ⇒ Object
34 35 36 |
# File 'lib/i18n/processes/logging.rb', line 34 def program_name PROGRAM_NAME end |
.warn_deprecated(message) ⇒ Object
9 10 11 |
# File 'lib/i18n/processes/logging.rb', line 9 def warn_deprecated() log_stderr Rainbow("#{program_name}: [DEPRECATED] #{message}").yellow.bright end |