Module: RubyJobs::JobBase::JobLogging
- Included in:
- Job
- Defined in:
- lib/job_base/job_logging.rb
Instance Method Summary collapse
- #init_logger(id_or_name, name = nil, type = :plain) ⇒ Object
- #log(*messages) ⇒ Object
- #logger(type, logger_id = nil, logger_name = nil) ⇒ Object
- #progress(*messages, &block) ⇒ Object
Instance Method Details
#init_logger(id_or_name, name = nil, type = :plain) ⇒ Object
26 27 28 |
# File 'lib/job_base/job_logging.rb', line 26 def init_logger(id_or_name, name=nil, type=:plain) logger(type, id_or_name.to_sym, name || id_or_name.to_s) end |
#log(*messages) ⇒ Object
30 31 32 33 34 |
# File 'lib/job_base/job_logging.rb', line 30 def log(*) return logger(:plain) if .empty? return logger(:plain, .first).log *.drop(1) if .first.is_a? Symbol || .first.nil? logger(:plain).log * end |
#logger(type, logger_id = nil, logger_name = nil) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/job_base/job_logging.rb', line 7 def logger(type, logger_id=nil, logger_name=nil) @loggers ||= {} loggers_of_type = (@loggers[type] ||= {}) logger_class = "#{type}Logger" logger_class[0] = logger_class[0].upcase base_name = job_name base_name += "_#{instance}" unless instance.nil? || instance.empty? logger_name ||= (logger_id ? "#{base_name}_#{logger_id}" : base_name) logger = (loggers_of_type[logger_id] ||= Logging.const_get(logger_class).new(logger_name)) if block_given? yield logger end logger end |
#progress(*messages, &block) ⇒ Object
36 37 38 39 40 |
# File 'lib/job_base/job_logging.rb', line 36 def progress(*, &block) return logger(:progress) if .empty? return logger(:progress, .first).log *.drop(1) if .first.is_a? Symbol block_given? ? logger(:progress).log(*, &block) : logger(:progress).log(*) end |