gilmour 0.2.7 → 0.2.8

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: 3bb536ca3fba5d81c5ab8ae282e7eeb3a6b1cefe
4
- data.tar.gz: 543fd382d9c4e3176cab664c7a10fe839775740d
3
+ metadata.gz: c364692b979b412f2e2057183e53a13c418a127c
4
+ data.tar.gz: 6a2dd4dcd850f82820c5c9fa4708dff3e3ab283b
5
5
  SHA512:
6
- metadata.gz: cd60a017a32fb69becd5a751cb9a2f06189244cac16910638469168b3123611c1fe39c20913a81fedd54d8323d455b455f1fdb76da7a10ce5ae7f1c4406dc59d
7
- data.tar.gz: 8816bde67db14712c95f62c3970308615a1d25d82ec63a8b26ac6fca18575a5be48f5ff7744039ceea664c3728888d8f8133c11b008e1d42d29647d697edefa2
6
+ metadata.gz: 5d4c63124e0f0a55666e8e081207386b591f10daaa0d5cf8cd093638343cd8645e468c4b034b67119c4f76bc13b054b4da80674f3470642fb4cd833d1b7a7140
7
+ data.tar.gz: 9fbf7269fdcddb0eecb61a358e6bf2ca1727afa81b12d6c16a34b21a783f970d9ee7c4dbfbcee677d0dff43e464b079e977aed7ac882149da5cf1b76bb8d67e9
@@ -125,7 +125,7 @@ module Gilmour
125
125
  end
126
126
 
127
127
  def publish_error(messsage)
128
- @publisher.publish(Gilmour::ErrorChannel, messsage)
128
+ publish(messsage, Gilmour::ErrorChannel)
129
129
  end
130
130
 
131
131
  def queue_error(key, message)
@@ -1,6 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
- require "logger"
3
+ require 'json'
4
+ require 'logger'
4
5
 
5
6
  # Top level module
6
7
  module Gilmour
@@ -147,21 +148,21 @@ module Gilmour
147
148
  end
148
149
  end
149
150
 
150
- def emit_error(message, code=500, extra={})
151
- # Publish all errors on gilmour.error
152
- # This may or may not have a listener based on the configuration
153
- # supplied at setup.
151
+ # Publish all errors on gilmour.error
152
+ # This may or may not have a listener based on the configuration
153
+ # supplied at setup.
154
+ def emit_error(message, code = 500, extra = {})
154
155
  opts = {
155
- :topic => @request[:topic],
156
- :data => @request[:data],
157
- :description => '',
158
- :sender => @sender,
159
- :multi_process => @multi_process,
160
- :code => 500
161
- }.merge(extra || {})
162
-
163
- opts[:timestamp] = Time.now.getutc
164
- payload = {:traceback => message, :extra => opts, :code => code}
156
+ topic: @request.topic,
157
+ request_data: @request.body,
158
+ userdata: JSON.generate(extra || {}),
159
+ sender: @sender,
160
+ multi_process: @multi_process,
161
+ timestamp: Time.now.getutc
162
+ }
163
+
164
+ payload = { backtrace: message, code: code }
165
+ payload.merge!(opts)
165
166
  @backend.emit_error payload
166
167
  end
167
168
 
@@ -118,6 +118,33 @@ describe 'TestSubscriber' do
118
118
  end
119
119
  end
120
120
 
121
+ context 'Exception data' do
122
+ Given(:ping_opts) do
123
+ redis_ping_options
124
+ end
125
+
126
+ When(:sub) do
127
+ Gilmour::RedisBackend.new({})
128
+ end
129
+ When(:code) do
130
+ waiter_error = Waiter.new
131
+ code = nil
132
+
133
+ error_listener_proc = sub.add_listener Gilmour::ErrorChannel do
134
+ code = request.body.code
135
+ waiter_error.signal
136
+ end
137
+
138
+ sub.publish(3, TestSubscriber::TimeoutTopic)
139
+ waiter_error.wait(5)
140
+ sub.remove_listener Gilmour::ErrorChannel, error_listener_proc
141
+ code
142
+ end
143
+ Then do
144
+ code.should be == 504
145
+ end
146
+ end
147
+
121
148
  context 'Handler sleeps longer than the Timeout' do
122
149
  Given(:ping_opts) do
123
150
  redis_ping_options
@@ -128,6 +128,33 @@ describe 'TestSubscriberFork' do
128
128
  end
129
129
  end
130
130
 
131
+ context 'Exception data' do
132
+ Given(:ping_opts) do
133
+ redis_ping_options
134
+ end
135
+
136
+ When(:sub) do
137
+ Gilmour::RedisBackend.new({})
138
+ end
139
+ When(:code) do
140
+ waiter_error = Waiter.new
141
+ code = nil
142
+
143
+ error_listener_proc = sub.add_listener Gilmour::ErrorChannel do
144
+ code = request.body.code
145
+ waiter_error.signal
146
+ end
147
+
148
+ sub.publish(3, TestSubscriber::TimeoutTopic)
149
+ waiter_error.wait(5)
150
+ sub.remove_listener Gilmour::ErrorChannel, error_listener_proc
151
+ code
152
+ end
153
+ Then do
154
+ code.should be == 504
155
+ end
156
+ end
157
+
131
158
  context 'Handler sleeps longer than the Timeout' do
132
159
  Given(:ping_opts) do
133
160
  redis_ping_options
data/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Gilmour
2
- VERSION = '0.2.7'
2
+ VERSION = '0.2.8'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gilmour
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aditya Godbole
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-02 00:00:00.000000000 Z
11
+ date: 2015-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec