Class: SolidObserver::Services::RecordCacheEvent

Inherits:
Object
  • Object
show all
Defined in:
lib/solid_observer/services/record_cache_event.rb

Constant Summary collapse

INTERNAL_CACHE_KEY_PREFIX =
"solid_observer/"

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(event, buffer) ⇒ RecordCacheEvent

Returns a new instance of RecordCacheEvent.



14
15
16
17
# File 'lib/solid_observer/services/record_cache_event.rb', line 14

def initialize(event, buffer)
  @event = event
  @buffer = buffer
end

Class Method Details

.call(event:, buffer:) ⇒ Object



10
11
12
# File 'lib/solid_observer/services/record_cache_event.rb', line 10

def self.call(event:, buffer:)
  new(event, buffer).call
end

Instance Method Details

#callObject



19
20
21
22
23
24
25
26
# File 'lib/solid_observer/services/record_cache_event.rb', line 19

def call
  return if internal_cache_event?

  record_metric_and_event
rescue => error
  raise error if error.is_a?(NameError)
  Rails.logger&.warn("[SolidObserver] Cache event recording failed: #{error.message}") if defined?(Rails)
end