Class: Eco::API::Common::Session::Logger::Cache
- Defined in:
- lib/eco/api/common/session/logger/cache.rb
Constant Summary collapse
- LEVELS =
%w[UNKNOWN FATAL ERROR WARN INFO DEBUG].freeze
- CHANNELS =
Eco::API::Common::Session::Logger::CHANNELS. map(&:to_s).map(&:upcase).freeze
Instance Method Summary collapse
- #add(level, datetime, message, formatted) ⇒ Object
- #cache ⇒ Object
-
#initialize ⇒ Cache
constructor
A new instance of Cache.
- #level(level) ⇒ Object
- #logs(level: nil, start_time: nil, end_time: nil) ⇒ Object
- #reset(level: nil, start_time: nil, end_time: nil) ⇒ Object
Constructor Details
#initialize ⇒ Cache
Returns a new instance of Cache.
7 8 9 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 7 def initialize reset end |
Instance Method Details
#add(level, datetime, message, formatted) ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 15 def add(level, datetime, , formatted) Eco::API::Common::Session::Logger::Log.new( level, datetime, , formatted ).tap do |log| self.level(level).push(log) end end |
#cache ⇒ Object
26 27 28 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 26 def cache @cache ||= {} end |
#level(level) ⇒ Object
11 12 13 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 11 def level(level) cache[to_level(level)] ||= [] end |
#logs(level: nil, start_time: nil, end_time: nil) ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 39 def logs(level: nil, start_time: nil, end_time: nil) where(start_time, end_time) do |cond| to_levels(level).map do |lev| self.level(lev).select(&cond) end.flatten end.sort end |
#reset(level: nil, start_time: nil, end_time: nil) ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/eco/api/common/session/logger/cache.rb', line 30 def reset(level: nil, start_time: nil, end_time: nil) where(start_time, end_time) do |cond| to_levels(level).map do |lev| self.level(lev).reject(&cond) end end self end |