Module: JSONdb::Logger
- Included in:
- Field, FileOps, Record, Settings, Table, Tables, Validations::Naming, Validations::Types
- Defined in:
- lib/jsondb/logger.rb
Instance Method Summary collapse
- #allowed_log_level?(log_level) ⇒ Boolean
-
#log(msg, log_level = :debug, force_raise_error = false) ⇒ Object
LogLevels = { debug: 1, info: 2, error: 3 }.
- #log_enabled? ⇒ Boolean
- #log_this?(log_level) ⇒ Boolean
Instance Method Details
#allowed_log_level?(log_level) ⇒ Boolean
22 23 24 |
# File 'lib/jsondb/logger.rb', line 22 def allowed_log_level?(log_level) JSONdb.constants.loglevels.keys.include?(log_level) end |
#log(msg, log_level = :debug, force_raise_error = false) ⇒ Object
LogLevels = {
debug: 1,
info: 2,
error: 3
}
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/jsondb/logger.rb', line 11 def log(msg, log_level = :debug, force_raise_error = false) log("Log level not allowed: '#{log_level}", :error) if !allowed_log_level?(log_level) if log_enabled? and log_this?(log_level) @log_file ||= FileOps.new(JSONdb.settings.log_folder, JSONdb.settings.log_file, 'log', false) @log_file.write_line("#{Time.now} #{log_level.to_s.upcase} #{self.class.to_s} #{msg}") puts "#{Time.now} #{log_level.to_s.upcase} #{self.class.to_s}: #{msg} " if JSONdb.settings.verbose end raise "#{log_level.to_s.upcase} #{self.class.to_s} #{msg}" if (JSONdb.settings.raise_errors == true or force_raise_error == true) and log_level == :error end |