Class: Norikra::Client::Event

Inherits:
Thor
  • Object
show all
Includes:
CLIUtil
Defined in:
lib/norikra/client/cli.rb

Instance Method Summary collapse

Methods included from CLIUtil

#client, #formatter, #parser

Instance Method Details

#fetch(query_name) ⇒ Object



116
117
118
119
120
121
122
123
124
# File 'lib/norikra/client/cli.rb', line 116

def fetch(query_name)
  formatter = formatter(options[:format])
  time_formatter = lambda{|t| Time.at(t).strftime(options[:time_format])}

  client(parent_options).event(query_name).each do |time,event|
    event = {options[:time_key] => Time.at(time).strftime(options[:time_format])}.merge(event)
    puts formatter.format(event)
  end
end

#send(target) ⇒ Object



98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'lib/norikra/client/cli.rb', line 98

def send(target)
  client = client(parent_options)
  parser = parser(options[:format])
  buffer = []
  $stdin.each_line do |line|
    buffer.push(parser.parse(line))
    if buffer.size >= options[:batch_size]
      client.send(target, buffer)
      buffer = []
    end
  end
  client.send(target, buffer) if buffer.size > 0
end

#sweepObject



131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/norikra/client/cli.rb', line 131

def sweep
  formatter = formatter(options[:format])
  time_formatter = lambda{|t| Time.at(t).strftime(options[:time_format])}

  data = client(parent_options).sweep

  data.keys.sort.each do |queryname|
    events = data[queryname]
    events.each do |time,event|
      event = {
        options[:time_key] => Time.at(time).strftime(options[:time_format]),
        options[:query_name_key] => queryname,
      }.merge(event)
      puts formatter.format(event)
    end
  end
end