class InfluxRemix::Remix
Public Class Methods
new(data)
click to toggle source
# File lib/influx_remix/remix.rb, line 3 def initialize(data) @data = data end
Public Instance Methods
fields()
click to toggle source
# File lib/influx_remix/remix.rb, line 25 def fields elements = @data.split(' ') chunk = elements[1].split(',') transform_data(chunk) end
line_protocol()
click to toggle source
# File lib/influx_remix/remix.rb, line 42 def line_protocol @data end
measurement()
click to toggle source
# File lib/influx_remix/remix.rb, line 7 def measurement elements = @data.split(',') if has_measurement? return elements.first else return nil end end
time()
click to toggle source
# File lib/influx_remix/remix.rb, line 31 def time @data.split(' ').last end
update_time(time)
click to toggle source
# File lib/influx_remix/remix.rb, line 35 def update_time(time) info = @data.split(' ') info.pop info.push(time.to_s) @data = info.join(' ') end
Private Instance Methods
has_measurement?()
click to toggle source
# File lib/influx_remix/remix.rb, line 48 def has_measurement? elements = @data.split(',') !elements.first.include?('=') end
transform_data(chunk)
click to toggle source
# File lib/influx_remix/remix.rb, line 53 def transform_data(chunk) chunk.reduce({}) do |memo, val| elements = val.split('=') if !memo.has_key?(elements[0]) memo[elements[0]] = [] end memo[elements[0]].push(elements[1]) memo end end