29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
# File 'lib/logstash/filters/linelookup.rb', line 29
def filter(event)
retries = 2
begin
@lookupconn ||= connect
@lookupconn.puts(event.sprintf(@query))
response = @lookupconn.gets.chop
if response != @miss_value
event.set(@target, response)
filter_matched(event)
end
rescue => e
@logger.warn("Failed to query lookup service", :event => event, :exception => e)
@lookupconn = nil
retries -= 1
unless retries < 0
retry
else
@logger.warn("Too many reties. Giving up.", :event => event)
event.tag("_linelookup_failure")
end
end
end
|