Module: Moon::Logfmt
- Defined in:
- lib/moon-logfmt/utils.rb,
lib/moon-logfmt/logger.rb,
lib/moon-logfmt/version.rb,
lib/moon-logfmt/severity.rb,
lib/moon-logfmt/formatter.rb,
lib/moon-logfmt/null_logger.rb,
lib/moon-logfmt/stdlib_loggable.rb
Overview
Implementation of logfmt for Moon
Defined Under Namespace
Modules: Severity, StdlibLoggable, Version Classes: Formatter, KeyValueFormatter, Logger
Constant Summary collapse
- UNESCAPED_STRING =
Regular expression used for checking strings that may need escaping. This regular expression will validate true if the string doesn’t need escaping.
/\A[\w\.\-\+\%\_\,\:\;\/]*\z/i
- VERSION =
Version::STRING
- NullLogger =
Logger.new
Class Method Summary collapse
-
.determine_loglevel_from_object(object) ⇒ Integer
Determines what the loglevel should be from the given object.
-
.escape_context_data(data) {|key, value| ... } ⇒ Object
Escapes the context values and yields the result.
- .loglevel_to_symbol(loglevel) ⇒ Symbol
- .new(*args, &block) ⇒ Object
Class Method Details
.determine_loglevel_from_object(object) ⇒ Integer
Determines what the loglevel should be from the given object
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/moon-logfmt/utils.rb', line 34 def self.determine_loglevel_from_object(object) return object if object.is_a?(Integer) case object.to_s.upcase when 'DEBUG' then Moon::Logfmt::Severity::DEBUG when 'INFO' then Moon::Logfmt::Severity::INFO when 'WARN' then Moon::Logfmt::Severity::WARN when 'ERROR' then Moon::Logfmt::Severity::ERROR when 'FATAL' then Moon::Logfmt::Severity::FATAL when 'UNKNOWN' then Moon::Logfmt::Severity::UNKNOWN else raise ArgumentError, "unknown log level #{object}" end end |
.escape_context_data(data) {|key, value| ... } ⇒ Object
Escapes the context values and yields the result.
16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/moon-logfmt/utils.rb', line 16 def self.escape_context_data(data) return to_enum :escape_context_data, data unless block_given? data.each_pair do |key, value| case value when Array value = value.join(',') else value = value.to_s end value = value.dump unless value =~ UNESCAPED_STRING yield key.to_s, value end end |
.loglevel_to_symbol(loglevel) ⇒ Symbol
50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/moon-logfmt/utils.rb', line 50 def self.loglevel_to_symbol(loglevel) case loglevel when Moon::Logfmt::Severity::DEBUG then :debug when Moon::Logfmt::Severity::INFO then :info when Moon::Logfmt::Severity::WARN then :warn when Moon::Logfmt::Severity::ERROR then :error when Moon::Logfmt::Severity::FATAL then :fatal when Moon::Logfmt::Severity::UNKNOWN then :unknown else loglevel.to_s end end |