sensu 0.9.6.beta.2 → 0.9.6.beta.3

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.
data/lib/sensu/api.rb CHANGED
@@ -58,18 +58,23 @@ module Sensu
58
58
 
59
59
  configure do
60
60
  disable :protection
61
+ disable :show_exceptions
61
62
  end
62
63
 
63
64
  not_found do
64
65
  ''
65
66
  end
66
67
 
68
+ error do
69
+ ''
70
+ end
71
+
67
72
  before do
68
73
  content_type 'application/json'
74
+ request_log(env)
69
75
  end
70
76
 
71
77
  aget '/info' do
72
- request_log(env)
73
78
  response = {
74
79
  :sensu => {
75
80
  :version => VERSION
@@ -89,7 +94,6 @@ module Sensu
89
94
  end
90
95
 
91
96
  aget '/clients' do
92
- request_log(env)
93
97
  response = Array.new
94
98
  $redis.smembers('clients').callback do |clients|
95
99
  unless clients.empty?
@@ -108,7 +112,6 @@ module Sensu
108
112
  end
109
113
 
110
114
  aget '/client/:name' do |client_name|
111
- request_log(env)
112
115
  $redis.get('client:' + client_name).callback do |client_json|
113
116
  unless client_json.nil?
114
117
  body client_json
@@ -120,7 +123,6 @@ module Sensu
120
123
  end
121
124
 
122
125
  adelete '/client/:name' do |client_name|
123
- request_log(env)
124
126
  $redis.get('client:' + client_name).callback do |client_json|
125
127
  unless client_json.nil?
126
128
  client = JSON.parse(client_json, :symbolize_names => true)
@@ -148,8 +150,11 @@ module Sensu
148
150
  $redis.srem('clients', client_name)
149
151
  $redis.del('events:' + client_name)
150
152
  $redis.del('client:' + client_name)
151
- $settings[:checks].each_key do |check_name|
152
- $redis.del('history:' + client_name + ':' + check_name)
153
+ $redis.smembers('history:' + client_name).callback do |checks|
154
+ checks.each do |check_name|
155
+ $redis.del('history:' + client_name + ':' + check_name)
156
+ end
157
+ $redis.del('history:' + client_name)
153
158
  end
154
159
  end
155
160
  status 204
@@ -163,12 +168,10 @@ module Sensu
163
168
  end
164
169
 
165
170
  aget '/checks' do
166
- request_log(env)
167
171
  body $settings.checks.to_json
168
172
  end
169
173
 
170
174
  aget '/check/:name' do |check_name|
171
- request_log(env)
172
175
  if $settings.check_exists?(check_name)
173
176
  response = $settings[:checks][check_name].merge(:name => check_name)
174
177
  body response.to_json
@@ -179,14 +182,13 @@ module Sensu
179
182
  end
180
183
 
181
184
  apost '/check/request' do
182
- request_log(env)
183
185
  begin
184
186
  post_body = JSON.parse(request.body.read, :symbolize_names => true)
185
187
  rescue JSON::ParserError
186
188
  status 400
187
189
  body ''
188
190
  end
189
- if post_body[:check].is_a?(String) && post_body[:subscribers].is_a?(Array)
191
+ if post_body.is_a?(Hash) && post_body[:check].is_a?(String) && post_body[:subscribers].is_a?(Array)
190
192
  payload = {
191
193
  :name => post_body[:check],
192
194
  :issued => Time.now.to_i
@@ -206,7 +208,6 @@ module Sensu
206
208
  end
207
209
 
208
210
  aget '/events' do
209
- request_log(env)
210
211
  response = Array.new
211
212
  $redis.smembers('clients').callback do |clients|
212
213
  unless clients.empty?
@@ -227,7 +228,6 @@ module Sensu
227
228
  end
228
229
 
229
230
  aget '/event/:client/:check' do |client_name, check_name|
230
- request_log(env)
231
231
  $redis.hgetall('events:' + client_name).callback do |events|
232
232
  event_json = events[check_name]
233
233
  unless event_json.nil?
@@ -241,14 +241,13 @@ module Sensu
241
241
  end
242
242
 
243
243
  apost '/event/resolve' do
244
- request_log(env)
245
244
  begin
246
245
  post_body = JSON.parse(request.body.read, :symbolize_names => true)
247
246
  rescue JSON::ParserError
248
247
  status 400
249
248
  body ''
250
249
  end
251
- if post_body[:client].is_a?(String) && post_body[:check].is_a?(String)
250
+ if post_body.is_a?(Hash) && post_body[:client].is_a?(String) && post_body[:check].is_a?(String)
252
251
  $redis.hgetall('events:' + post_body[:client]).callback do |events|
253
252
  if events.include?(post_body[:check])
254
253
  payload = {
@@ -278,7 +277,6 @@ module Sensu
278
277
  end
279
278
 
280
279
  apost '/stash/*' do |path|
281
- request_log(env)
282
280
  begin
283
281
  post_body = JSON.parse(request.body.read)
284
282
  rescue JSON::ParserError
@@ -294,7 +292,6 @@ module Sensu
294
292
  end
295
293
 
296
294
  aget '/stash/*' do |path|
297
- request_log(env)
298
295
  $redis.get('stash:' + path).callback do |stash_json|
299
296
  if stash_json.nil?
300
297
  status 404
@@ -306,7 +303,6 @@ module Sensu
306
303
  end
307
304
 
308
305
  adelete '/stash/*' do |path|
309
- request_log(env)
310
306
  $redis.exists('stash:' + path).callback do |stash_exists|
311
307
  if stash_exists
312
308
  $redis.srem('stashes', path).callback do
@@ -323,14 +319,12 @@ module Sensu
323
319
  end
324
320
 
325
321
  aget '/stashes' do
326
- request_log(env)
327
322
  $redis.smembers('stashes') do |stashes|
328
323
  body stashes.to_json
329
324
  end
330
325
  end
331
326
 
332
327
  apost '/stashes' do
333
- request_log(env)
334
328
  begin
335
329
  post_body = JSON.parse(request.body.read)
336
330
  rescue JSON::ParserError
@@ -1,5 +1,5 @@
1
1
  module Sensu
2
- VERSION = '0.9.6.beta.2'
2
+ VERSION = '0.9.6.beta.3'
3
3
 
4
4
  DEFAULT_OPTIONS = {
5
5
  :config_file => '/etc/sensu/config.json',
data/lib/sensu/server.rb CHANGED
@@ -182,6 +182,7 @@ module Sensu
182
182
  :check => check,
183
183
  :occurrences => 1
184
184
  }
185
+ @redis.sadd('history:' + client[:name], check[:name])
185
186
  history_key = 'history:' + client[:name] + ':' + check[:name]
186
187
  @redis.rpush(history_key, check[:status]).callback do
187
188
  @redis.lrange(history_key, -21, -1).callback do |history|
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu
3
3
  version: !ruby/object:Gem::Version
4
- hash: 62196231
4
+ hash: 62196229
5
5
  prerelease: true
6
6
  segments:
7
7
  - 0
8
8
  - 9
9
9
  - 6
10
10
  - beta
11
- - 2
12
- version: 0.9.6.beta.2
11
+ - 3
12
+ version: 0.9.6.beta.3
13
13
  platform: ruby
14
14
  authors:
15
15
  - Sean Porter
@@ -18,7 +18,7 @@ autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
20
 
21
- date: 2012-05-03 00:00:00 -07:00
21
+ date: 2012-05-04 00:00:00 -07:00
22
22
  default_executable:
23
23
  dependencies:
24
24
  - !ruby/object:Gem::Dependency