logstash-output-nsq 1.0.10 → 1.0.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e1181fa99eaf3d901a8105443850f7f8fdb84598
4
- data.tar.gz: 6013ca1afc554012fe8ea85b6bb15e9d4ee620c1
3
+ metadata.gz: 935351cd974419b603229a1fc1f85470dd0c5e58
4
+ data.tar.gz: a8a2495d3589e5f5e7a0d59cfa8762d5cb432678
5
5
  SHA512:
6
- metadata.gz: ce2121499a39d4483c8898f64465aaf3ddfef373422466e9f81f8cf9d29aa00e2e1aded110db5b3985f839ca4c814bc163f7b7d2586227b46f12fc5a3d23b561
7
- data.tar.gz: ad1aee4bf575a89637f74aa6242455da091435164496649e8f91f2c492137060262782c9fb2d7867b05b554ebfa1af95708a0e561ea6e227feb6c2d586bfeda4
6
+ metadata.gz: ef92fb170e99c2d2eaa9bce9e7e3235dd0d95d2c019dcfbb8a6d372aa1d1d2ae007e2822b8a6e1bb3db95db35b8729ef8da981575d172aa1f5ee03275e02a2ee
7
+ data.tar.gz: 0d7b0484df89569fc6db8e384b165b4e59080674ab5814664f33b962fa39010f1e07176383bfeb1d15cf5a872164a6f14553f148345524db023a125206de0118
@@ -1,14 +1,12 @@
1
1
  require 'logstash/namespace'
2
2
  require 'logstash/outputs/base'
3
- require 'java'
3
+ require 'nsq'
4
4
 
5
5
  class LogStash::Outputs::Nsq < LogStash::Outputs::Base
6
- declare_threadsafe!
7
6
  config_name 'nsq'
8
7
 
9
8
  default :codec, 'json'
10
9
 
11
- default :codec, 'json'
12
10
  config :nsqd, :validate => :string, :default => nil
13
11
  config :nsqlookupd, :validate => :array, :default => nil
14
12
  config :topic, :validate => :string, :required => true
@@ -18,9 +16,6 @@ class LogStash::Outputs::Nsq < LogStash::Outputs::Base
18
16
 
19
17
  public
20
18
  def register
21
- @thread_batch_map = Concurrent::Hash.new
22
-
23
- require 'nsq'
24
19
  options = {
25
20
  :nsqlookupd => @nsqlookupd,
26
21
  :topic => @topic,
@@ -62,41 +57,15 @@ class LogStash::Outputs::Nsq < LogStash::Outputs::Base
62
57
 
63
58
  @producer = Nsq::Producer.new(options)
64
59
  @logger.info('Registering nsq producer', :nsqd => @nsqd, :nsqlookupd => @nsqlookupd, :topic => @topic)
65
- @codec.on_event do |event, data|
66
- write_to_nsq(event, data)
67
- end
68
60
  end # def register
69
61
 
70
- def write_to_nsq(event, data)
71
- begin
72
- @producer.write(event.sprintf(data))
73
- rescue LogStash::ShutdownSignal
74
- @logger.info('nsq producer got shutdown signal')
75
- rescue => e
76
- @logger.warn('nsq producer threw exception, restarting', :exception => e)
77
- end # begin
62
+ def write_to_nsq(payload)
63
+ @producer.write(payload)
78
64
  end # def send_to_nsq
79
65
 
80
- def prepare(record)
81
- # This output is threadsafe, so we need to keep a batch per thread.
82
- @thread_batch_map[Thread.current].add(record)
83
- end
84
-
85
- def multi_receive(events)
86
- t = Thread.current
87
- if !@thread_batch_map.include?(t)
88
- @thread_batch_map[t] = java.util.ArrayList.new(events.size)
89
- end
90
-
91
- events.each do |event|
92
- break if event == LogStash::SHUTDOWN
93
- @codec.encode(event)
94
- end
95
-
96
- batch = @thread_batch_map[t]
97
- if batch.any?
98
- retrying_send(batch)
99
- batch.clear
66
+ def multi_receive_encoded(encoded)
67
+ encoded.each do |event,data|
68
+ write_to_nsq(data)
100
69
  end
101
70
  end
102
71
 
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-output-nsq'
3
- s.version = "1.0.10"
3
+ s.version = "1.0.11"
4
4
  s.licenses = ["Apache License (2.0)"]
5
5
  s.summary = "this logstash plugin outputs in a nsq topic"
6
6
  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,16 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-nsq
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.10
4
+ version: 1.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthias Schneider
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-20 00:00:00.000000000 Z
11
+ date: 2017-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
+ name: logstash-core
14
15
  requirement: !ruby/object:Gem::Requirement
15
16
  requirements:
16
17
  - - ">="
@@ -19,9 +20,8 @@ dependencies:
19
20
  - - "<"
20
21
  - !ruby/object:Gem::Version
21
22
  version: 8.0.0
22
- name: logstash-core
23
- prerelease: false
24
23
  type: :runtime
24
+ prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
@@ -31,48 +31,50 @@ dependencies:
31
31
  - !ruby/object:Gem::Version
32
32
  version: 8.0.0
33
33
  - !ruby/object:Gem::Dependency
34
+ name: logstash-codec-plain
34
35
  requirement: !ruby/object:Gem::Requirement
35
36
  requirements:
36
37
  - - ">="
37
38
  - !ruby/object:Gem::Version
38
39
  version: '0'
39
- name: logstash-codec-plain
40
- prerelease: false
41
40
  type: :runtime
41
+ prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
46
  version: '0'
47
47
  - !ruby/object:Gem::Dependency
48
+ name: nsq-ruby
48
49
  requirement: !ruby/object:Gem::Requirement
49
50
  requirements:
50
51
  - - ">="
51
52
  - !ruby/object:Gem::Version
52
53
  version: 2.1.0
53
- name: nsq-ruby
54
- prerelease: false
55
54
  type: :runtime
55
+ prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
60
  version: 2.1.0
61
61
  - !ruby/object:Gem::Dependency
62
+ name: logstash-devutils
62
63
  requirement: !ruby/object:Gem::Requirement
63
64
  requirements:
64
65
  - - ">="
65
66
  - !ruby/object:Gem::Version
66
67
  version: '0'
67
- name: logstash-devutils
68
- prerelease: false
69
68
  type: :development
69
+ prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - ">="
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0'
75
- 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
75
+ description: This gem is a logstash plugin required to be installed on top of the
76
+ Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not
77
+ a stand-alone program
76
78
  email: ms@wck.biz
77
79
  executables: []
78
80
  extensions: []
@@ -95,7 +97,7 @@ licenses:
95
97
  metadata:
96
98
  logstash_plugin: 'true'
97
99
  logstash_group: output
98
- post_install_message:
100
+ post_install_message:
99
101
  rdoc_options: []
100
102
  require_paths:
101
103
  - lib
@@ -110,9 +112,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
112
  - !ruby/object:Gem::Version
111
113
  version: '0'
112
114
  requirements: []
113
- rubyforge_project:
114
- rubygems_version: 2.4.8
115
- signing_key:
115
+ rubyforge_project:
116
+ rubygems_version: 2.4.5.1
117
+ signing_key:
116
118
  specification_version: 4
117
119
  summary: this logstash plugin outputs in a nsq topic
118
120
  test_files: