Class: LogStash::Filters::GoogleAppengine

Inherits:
Base
  • Object
show all
Defined in:
lib/logstash/filters/google_appengine.rb

Instance Method Summary collapse

Instance Method Details

#filter(event) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/logstash/filters/google_appengine.rb', line 16

def filter(event)
  return unless filter?(event)
  return unless event.get('protoPayload')

  payload = event.get('protoPayload')
  payload.delete '@type'
  payload['type'] = event.get('type')
  payload['latencyS'] = to_number(payload['latency'])
  payload['pendingTimeS'] = to_number(payload['pendingTime'])
  payload['appTimeS'] = payload['latencyS'] - payload['pendingTimeS']
  lines = payload.delete 'line'

  if lines
    lines.each_with_index { |line, i|
      yield create_event(collect_line_data(i, line, payload))
    }
  else
    yield create_event(collect_resource_request_data(payload))
  end
  event.cancel
end

#registerObject



11
12
13
14
# File 'lib/logstash/filters/google_appengine.rb', line 11

def register
  @md5 = Digest::MD5.new
  @semaphore = Mutex.new
end