fastly_nsq 1.4.1 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/fastly_nsq.rb +1 -0
- data/lib/fastly_nsq/listener.rb +14 -2
- data/lib/fastly_nsq/manager.rb +2 -2
- data/lib/fastly_nsq/testing.rb +5 -1
- data/lib/fastly_nsq/version.rb +1 -1
- data/spec/listener_spec.rb +2 -2
- data/spec/spec_helper.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c32c3f9d2cd2f85338848cc0755c270572fda54
|
4
|
+
data.tar.gz: b2fe431edb17100e5f6d3b96be45fedec6e7efc0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9bc72094ed5ae3a4e13857df307e70b4f9c95d3fe9fd62f1e1ec3e957638355aee03c70c0f2d55c5b0cdc2a4ed87727fc461fbd658acea29b8623557f5cfe0e2
|
7
|
+
data.tar.gz: 59122c8ecb1ce723027fcf46f9f9bc0592e7122620a6ef6cd67aa73005d604092cf2bf36ef9e6390d0e44c2b338ef146a9ed741c7784870bd3b3199dfa0e1ff0
|
data/lib/fastly_nsq.rb
CHANGED
data/lib/fastly_nsq/listener.rb
CHANGED
@@ -38,7 +38,19 @@ class FastlyNsq::Listener
|
|
38
38
|
|
39
39
|
def call(nsq_message)
|
40
40
|
message = FastlyNsq::Message.new(nsq_message)
|
41
|
-
|
41
|
+
|
42
|
+
logger.info do
|
43
|
+
{
|
44
|
+
channel: channel,
|
45
|
+
topic: topic,
|
46
|
+
attempts: nsq_message.attempts,
|
47
|
+
id: Digest::MD5.hexdigest(nsq_message.body.to_s),
|
48
|
+
metadata: message.meta,
|
49
|
+
}.tap do |l|
|
50
|
+
l[:data] = message.body if logger.level == Logger::DEBUG
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
42
54
|
preprocessor&.call(message)
|
43
55
|
result = processor.call(message)
|
44
56
|
message.finish if result
|
@@ -48,6 +60,6 @@ class FastlyNsq::Listener
|
|
48
60
|
def terminate
|
49
61
|
return unless connected?
|
50
62
|
consumer.terminate
|
51
|
-
logger.info "
|
63
|
+
logger.info "topic #{topic}, channel #{channel}: consumer terminated"
|
52
64
|
end
|
53
65
|
end
|
data/lib/fastly_nsq/manager.rb
CHANGED
@@ -43,10 +43,10 @@ class FastlyNsq::Manager
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def add_listener(listener)
|
46
|
-
logger.info { "
|
46
|
+
logger.info { "topic #{listener.topic}, channel #{listener.channel}: listening" }
|
47
47
|
|
48
48
|
if topic_listeners[listener.topic]
|
49
|
-
logger.warn { "topic
|
49
|
+
logger.warn { "topic #{listener.topic}: duplicate listener" }
|
50
50
|
end
|
51
51
|
|
52
52
|
topic_listeners[listener.topic] = listener
|
data/lib/fastly_nsq/testing.rb
CHANGED
@@ -62,9 +62,13 @@ module FastlyNsq
|
|
62
62
|
|
63
63
|
class TestMessage
|
64
64
|
attr_reader :raw_body
|
65
|
+
attr_reader :attempts
|
66
|
+
attr_reader :id
|
65
67
|
|
66
68
|
def initialize(raw_body)
|
67
69
|
@raw_body = raw_body
|
70
|
+
@id = Digest::SHA1.hexdigest(raw_body.to_s + Time.now.to_s)
|
71
|
+
@attempts = 0
|
68
72
|
end
|
69
73
|
|
70
74
|
def body
|
@@ -78,7 +82,7 @@ module FastlyNsq
|
|
78
82
|
end
|
79
83
|
|
80
84
|
def requeue(*)
|
81
|
-
|
85
|
+
@attempts += 1
|
82
86
|
true
|
83
87
|
end
|
84
88
|
end
|
data/lib/fastly_nsq/version.rb
CHANGED
data/spec/listener_spec.rb
CHANGED
@@ -130,7 +130,7 @@ RSpec.describe FastlyNsq::Listener do
|
|
130
130
|
end
|
131
131
|
|
132
132
|
describe 'faking', :fake do
|
133
|
-
let!(:message) {
|
133
|
+
let!(:message) { JSON.dump('foo' => 'bar') }
|
134
134
|
|
135
135
|
before { subject }
|
136
136
|
|
@@ -169,7 +169,7 @@ RSpec.describe FastlyNsq::Listener do
|
|
169
169
|
end
|
170
170
|
|
171
171
|
describe 'inline', :inline do
|
172
|
-
let!(:message) {
|
172
|
+
let!(:message) { JSON.dump('foo' => 'bar') }
|
173
173
|
let!(:processor) { ->(m) { messages << m.raw_body } }
|
174
174
|
|
175
175
|
before { subject }
|
data/spec/spec_helper.rb
CHANGED
@@ -20,7 +20,7 @@ if ENV['DEBUG']
|
|
20
20
|
FastlyNsq.logger = Logger.new(STDOUT)
|
21
21
|
else
|
22
22
|
Concurrent.use_stdlib_logger(Logger::ERROR)
|
23
|
-
FastlyNsq.logger = Logger.new(
|
23
|
+
FastlyNsq.logger = Logger.new('/dev/null').tap { |l| l.level = Logger::DEBUG }
|
24
24
|
end
|
25
25
|
|
26
26
|
RSpec.configure do |config|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastly_nsq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tommy O'Neil
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2018-04-
|
16
|
+
date: 2018-04-16 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: awesome_print
|
@@ -239,7 +239,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
239
239
|
version: '0'
|
240
240
|
requirements: []
|
241
241
|
rubyforge_project:
|
242
|
-
rubygems_version: 2.
|
242
|
+
rubygems_version: 2.5.1
|
243
243
|
signing_key:
|
244
244
|
specification_version: 4
|
245
245
|
summary: Fastly NSQ Adapter
|