Class: SolidObserver::Services::RecordCableMetric
- Inherits:
-
Object
- Object
- SolidObserver::Services::RecordCableMetric
- Defined in:
- lib/solid_observer/services/record_cable_metric.rb
Constant Summary collapse
- COUNTERS =
%i[ broadcasts_count transmissions_count confirmations_count rejections_count perform_actions_count errors_count ].freeze
- EVENT_COUNTER_MAP =
{ "broadcast.action_cable" => :broadcasts_count, "transmit.action_cable" => :transmissions_count, "transmit_subscription_confirmation.action_cable" => :confirmations_count, "transmit_subscription_rejection.action_cable" => :rejections_count, "perform_action.action_cable" => :perform_actions_count }.freeze
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(event, buffer) ⇒ RecordCableMetric
constructor
A new instance of RecordCableMetric.
Constructor Details
#initialize(event, buffer) ⇒ RecordCableMetric
Returns a new instance of RecordCableMetric.
29 30 31 32 |
# File 'lib/solid_observer/services/record_cable_metric.rb', line 29 def initialize(event, buffer) @event = event @buffer = buffer end |
Class Method Details
.call(event:, buffer: SolidObserver::CableMetricBuffer.instance) ⇒ Object
25 26 27 |
# File 'lib/solid_observer/services/record_cable_metric.rb', line 25 def self.call(event:, buffer: SolidObserver::CableMetricBuffer.instance) new(event, buffer).call end |
Instance Method Details
#call ⇒ Object
34 35 36 37 38 |
# File 'lib/solid_observer/services/record_cable_metric.rb', line 34 def call @buffer.increment(metric_data) rescue => error Rails.logger&.warn("[SolidObserver] Cable metric recording failed: #{error.}") if defined?(Rails) end |