Class: InfluxDB::Rails::Middleware::SimpleSubscriber

Inherits:
Subscriber
  • Object
show all
Defined in:
lib/influxdb/rails/middleware/simple_subscriber.rb

Overview

Subscriber acts as base class for different *Subscriber classes, which are intended as ActiveSupport::Notifications.subscribe consumers.

Direct Known Subclasses

RenderSubscriber, SqlSubscriber

Constant Summary

Constants included from Logger

Logger::PREFIX

Instance Attribute Summary collapse

Attributes inherited from Subscriber

#configuration

Instance Method Summary collapse

Constructor Details

#initialize(configuration, series_name) ⇒ SimpleSubscriber

Returns a new instance of SimpleSubscriber.



12
13
14
15
# File 'lib/influxdb/rails/middleware/simple_subscriber.rb', line 12

def initialize(configuration, series_name)
  super(configuration)
  @series_name = series_name
end

Instance Attribute Details

#series_nameObject (readonly)

Returns the value of attribute series_name.



10
11
12
# File 'lib/influxdb/rails/middleware/simple_subscriber.rb', line 10

def series_name
  @series_name
end

Instance Method Details

#call(_name, started, finished, _unique_id, payload) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/influxdb/rails/middleware/simple_subscriber.rb', line 17

def call(_name, started, finished, _unique_id, payload)
  return unless enabled?

  begin
    # InfluxDB::Rails.client.write_point series_name,
    #                                    values:    values(started, finished, payload),
    #                                    tags:      tags(payload),
    #                                    timestamp: timestamp(finished.utc)
    InfluxDB::Rails.client.write_point series_name,
                                       values:    values(started, finished, payload),
                                       tags:      tags(payload),
                                       timestamp: timestamp(started.utc)
  rescue StandardError => e
    log :error, "[InfluxDB::Rails] Unable to write points: #{e.message}"
  end
end