logstash-input-nsq 1.0.6 → 1.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/logstash/inputs/nsq.rb +38 -41
- data/logstash-input-nsq.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4bcdd26b956b28a856e1ed8e211f7cc423adda09
|
4
|
+
data.tar.gz: 9e5ae986b664e3e905f188d1b4a93b451cd52387
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ec2f8811ce479d180a3be6a79509f9de06dd2dc76f974fda0669abba2029216d88324b828330a7217807b35322bc9dfbab3ab34b1e9dc0968941c221b502ad4
|
7
|
+
data.tar.gz: e24f7f6d45a160636b9fd9cbc95c0d857d1797b718b90fc365d8eb595219cd2d8cd2d2ae955f91a4f69f4a7ed4323ae3dc0e4a273e9d838ce53dee511256df2f
|
data/lib/logstash/inputs/nsq.rb
CHANGED
@@ -17,65 +17,62 @@ class LogStash::Inputs::Nsq < LogStash::Inputs::Base
|
|
17
17
|
|
18
18
|
public
|
19
19
|
def register
|
20
|
-
|
20
|
+
@logger.info('Registering nsq', :channel => @channel, :topic => @topic, :nsqlookupd => @nsqlookupd)
|
21
|
+
if @tls_key and @tls_cert
|
22
|
+
@consumer = Nsq::Consumer.new(
|
23
|
+
:nsqlookupd => @nsqlookupd,
|
24
|
+
:topic => @topic,
|
25
|
+
:channel => @channel,
|
26
|
+
:max_in_flight => @max_in_flight,
|
27
|
+
:tls_v1 => @tls_v1,
|
28
|
+
:tls_context => {
|
29
|
+
key: @tls_key,
|
30
|
+
certificate: @tls_cert
|
31
|
+
}
|
32
|
+
)
|
33
|
+
else
|
34
|
+
@consumer = Nsq::Consumer.new(
|
35
|
+
:nsqlookupd => @nsqlookupd,
|
36
|
+
:topic => @topic,
|
37
|
+
:channel => @channel,
|
38
|
+
:tls_v1 => @tls_v1,
|
39
|
+
:max_in_flight => @max_in_flight
|
40
|
+
)
|
41
|
+
end
|
21
42
|
end # def register
|
22
43
|
|
23
44
|
public
|
24
45
|
def run(logstash_queue)
|
25
46
|
@logger.info('Running nsq', :channel => @channel, :topic => @topic, :nsqlookupd => @nsqlookupd)
|
26
47
|
begin
|
27
|
-
|
28
|
-
if @tls_key and @tls_cert
|
29
|
-
consumer = Nsq::Consumer.new(
|
30
|
-
:nsqlookupd => @nsqlookupd,
|
31
|
-
:topic => @topic,
|
32
|
-
:channel => @channel,
|
33
|
-
:max_in_flight => @max_in_flight,
|
34
|
-
:tls_v1 => @tls_v1,
|
35
|
-
:tls_context => {
|
36
|
-
key: @tls_key,
|
37
|
-
certificate: @tls_cert
|
38
|
-
}
|
39
|
-
)
|
40
|
-
else
|
41
|
-
consumer = Nsq::Consumer.new(
|
42
|
-
:nsqlookupd => @nsqlookupd,
|
43
|
-
:topic => @topic,
|
44
|
-
:channel => @channel,
|
45
|
-
:tls_v1 => @tls_v1,
|
46
|
-
:max_in_flight => @max_in_flight
|
47
|
-
)
|
48
|
-
end
|
49
|
-
while true
|
48
|
+
while !stop?
|
50
49
|
#@logger.info('consuming...')
|
51
|
-
event = consumer.pop
|
50
|
+
event = @consumer.pop
|
52
51
|
#@logger.info('processing:', :event => event)
|
53
52
|
queue_event(event.body, logstash_queue)
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
@logger.info('nsq got shutdown signal')
|
58
|
-
end
|
59
|
-
@logger.info('Done running nsq input')
|
60
|
-
rescue => e
|
61
|
-
@logger.warn('client threw exception, restarting',
|
62
|
-
:exception => e)
|
63
|
-
retry
|
53
|
+
event.finish
|
54
|
+
end
|
55
|
+
@logger.warn('Done running nsq input')
|
64
56
|
end
|
65
|
-
finished
|
66
57
|
end # def run
|
67
58
|
|
68
59
|
private
|
69
60
|
def queue_event(body, output_queue)
|
70
61
|
begin
|
71
62
|
#@logger.info('processing:', :body => body)
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
63
|
+
event = LogStash::Event.new("message" => body)
|
64
|
+
decorate(event)
|
65
|
+
output_queue << event
|
66
|
+
rescue => e # parse or event creation error
|
67
|
+
@logger.error('Failed to create event', :message => "#{body}", :exception => e,
|
77
68
|
:backtrace => e.backtrace)
|
78
69
|
end # begin
|
79
70
|
end # def queue_event
|
80
71
|
|
72
|
+
public
|
73
|
+
def stop
|
74
|
+
@logger.warn('nsq got stop signal. terminate')
|
75
|
+
@consumer.terminate
|
76
|
+
end #stop
|
77
|
+
|
81
78
|
end #class LogStash::Inputs::Nsq
|
data/logstash-input-nsq.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-input-nsq'
|
4
|
-
s.version = '1.0.
|
4
|
+
s.version = '1.0.7'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = 'This input will read events from a nsq topic.'
|
7
7
|
s.description = "This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-input-nsq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthias Schneider
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-10-
|
11
|
+
date: 2016-10-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: logstash-core
|