logstash-mixin-zeromq 2.0.1 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b320269e688ab131038a42709a944cc52431b9a4
|
4
|
+
data.tar.gz: b9e7cd554cd196100a14c0823c670c09725ad1b2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a0259f8102693e985f83a6f80eafa62c99ec6ca63bd318b6368be1f12a37fad25087fcfbaab79a9bea776d85e9993053489f4e5808fc97692244cf56820f485
|
7
|
+
data.tar.gz: f96239b1f52883b1c2f694fefd6fbedf6ec6e52f6d5b8a055f93b5c92a64f7809f66db1734067bb76126519a431813988d58746a08681f05756264d7a983659f
|
data/LICENSE
CHANGED
@@ -2,13 +2,25 @@
|
|
2
2
|
require 'ffi-rzmq'
|
3
3
|
require "logstash/namespace"
|
4
4
|
|
5
|
+
class LogStash::PluginMixins::ZeroMQContext
|
6
|
+
class << self
|
7
|
+
def context
|
8
|
+
@context ||= ZMQ::Context.new
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
5
13
|
module LogStash::PluginMixins::ZeroMQ
|
6
14
|
# LOGSTASH-400
|
7
15
|
# see https://github.com/chuckremes/ffi-rzmq/blob/master/lib/ffi-rzmq/socket.rb#L93-117
|
8
16
|
STRING_OPTS = %w{IDENTITY SUBSCRIBE UNSUBSCRIBE}
|
9
17
|
|
10
18
|
def context
|
11
|
-
|
19
|
+
LogStash::PluginMixins::ZeroMQContext.context
|
20
|
+
end
|
21
|
+
|
22
|
+
def terminate_context
|
23
|
+
context.terminate
|
12
24
|
end
|
13
25
|
|
14
26
|
def setup(socket, address)
|
@@ -17,7 +29,7 @@ module LogStash::PluginMixins::ZeroMQ
|
|
17
29
|
else
|
18
30
|
error_check(socket.connect(address), "connecting to #{address}")
|
19
31
|
end
|
20
|
-
@logger.info("0mq: #{server? ? '
|
32
|
+
@logger.info("0mq: #{server? ? 'bound' : 'connected'}", :address => address)
|
21
33
|
end
|
22
34
|
|
23
35
|
def error_check(rc, doing, eagain_not_error=false)
|
@@ -1,10 +1,10 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-mixin-zeromq'
|
4
|
-
s.version = '2.0.
|
4
|
+
s.version = '2.0.2'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = "Mixin to share code for zeromq input, output and filter"
|
7
|
-
s.description = "This gem
|
7
|
+
s.description = "This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program"
|
8
8
|
s.authors = ["Elastic"]
|
9
9
|
s.email = 'info@elastic.co'
|
10
10
|
s.homepage = "http://www.elastic.co/guide/en/logstash/current/index.html"
|
@@ -18,6 +18,7 @@ describe LogStash::PluginMixins::ZeroMQ do
|
|
18
18
|
d.mode = "server"
|
19
19
|
d
|
20
20
|
}
|
21
|
+
let(:tracer) { double("logger") }
|
21
22
|
|
22
23
|
it "should initialize with no extra settings" do
|
23
24
|
expect {
|
@@ -40,6 +41,13 @@ describe LogStash::PluginMixins::ZeroMQ do
|
|
40
41
|
it "should setup a server, bind to address without error" do
|
41
42
|
expect { impl.setup(socket, "tcp://127.0.0.1:#{port}") }.to_not raise_error
|
42
43
|
end
|
44
|
+
|
45
|
+
it "a 'bound' info line is logged" do
|
46
|
+
allow(tracer).to receive(:debug)
|
47
|
+
impl.logger = tracer
|
48
|
+
expect(tracer).to receive(:info).with("0mq: bound", {:address=>"tcp://127.0.0.1:#{port}"})
|
49
|
+
impl.setup(socket, "tcp://127.0.0.1:#{port}")
|
50
|
+
end
|
43
51
|
end
|
44
52
|
|
45
53
|
context "a client" do
|
@@ -49,6 +57,13 @@ describe LogStash::PluginMixins::ZeroMQ do
|
|
49
57
|
d
|
50
58
|
}
|
51
59
|
|
60
|
+
it "a 'connected' info line is logged" do
|
61
|
+
allow(tracer).to receive(:debug)
|
62
|
+
impl_client.logger = tracer
|
63
|
+
expect(tracer).to receive(:info).with("0mq: connected", {:address=>"tcp://127.0.0.1:#{port}"})
|
64
|
+
impl_client.setup(socket, "tcp://127.0.0.1:#{port}")
|
65
|
+
end
|
66
|
+
|
52
67
|
it "should setup a client, connecting to address without error" do
|
53
68
|
expect { impl_client.setup(socket, "tcp://127.0.0.1:#{port}") }.to_not raise_error
|
54
69
|
end
|
@@ -100,6 +115,5 @@ describe LogStash::PluginMixins::ZeroMQ do
|
|
100
115
|
it "should set multiple options" do
|
101
116
|
expect { impl.setopts(socket, { "ZMQ::SNDHWM" => "50", "ZMQ::SNDBUF" => "50" } ) }.to_not raise_error
|
102
117
|
end
|
103
|
-
|
104
118
|
end
|
105
119
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-mixin-zeromq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-04-
|
11
|
+
date: 2016-04-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,7 +72,7 @@ dependencies:
|
|
72
72
|
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '0'
|
75
|
-
description: This gem
|
75
|
+
description: This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program
|
76
76
|
email: info@elastic.co
|
77
77
|
executables: []
|
78
78
|
extensions: []
|
@@ -85,7 +85,7 @@ files:
|
|
85
85
|
- NOTICE.TXT
|
86
86
|
- README.md
|
87
87
|
- lib/logstash/plugin_mixins/zeromq.rb
|
88
|
-
- logstash-
|
88
|
+
- logstash-mixin-zeromq.gemspec
|
89
89
|
- spec/plugin_mixins/zeromq_spec.rb
|
90
90
|
homepage: http://www.elastic.co/guide/en/logstash/current/index.html
|
91
91
|
licenses:
|