sensu 0.17.0.beta.1-java → 0.17.0.beta.2-java

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: 527ae4bad6db09b92d1bcdf168319b8de1e219d5
4
- data.tar.gz: 8907b3f93f547df6a0181534c66b4a6f5549ad4f
3
+ metadata.gz: 1211c5ad9ff7c8e426994a580d6311818368d958
4
+ data.tar.gz: 843bd1f44c74f99a0d1e66787f52de53153fd365
5
5
  SHA512:
6
- metadata.gz: 9ec6b9aa193780c2a4e3019c1b7c811c6af167e93f44bb7c8cf61af7a4c19fa7af5cc4b9d95605d485e065c4f2fc15ac21811842ef92d1fd3cdcd3baeb7dee17
7
- data.tar.gz: cf39bb13d3018b360a5032a59364f8225157c2119765cc00cfc725ba9b6f8ed2fd5a032c65655fb813ca792f54f09a92aa7cd7c2b09dc8fcbf3cae439bd291e6
6
+ metadata.gz: c369defff476341b02f87a029a0db3a4838528a9c969a677492f69311dd5c120e6e0cb8a691f291684b6651b8561971bb4f3c00d52662a33235480bb1f8794d9
7
+ data.tar.gz: e4e33db49f8496360be5608273af981831d283f07b2fe812d191955c370b094cd2327042e2d6f54d1d466185feb4f6e6903a85bc9ebe29a230fc808148231da6
data/CHANGELOG.md CHANGED
@@ -11,6 +11,19 @@ Handler output with multiple lines is now logged as a single log event.
11
11
 
12
12
  Support for Sensu filter extensions.
13
13
 
14
+ Check definitions can now specify a Sensu check extension to run,
15
+ "extension", instead of a command.
16
+
17
+ Sensu transport "reconnect_on_error" configuration option, to enable
18
+ transport reconnect in the event of an unexpected error. This is set to
19
+ false by default, as some errors are unrecoverable. The Sensu transport
20
+ will always reconnect when there is a loss of connectivity.
21
+
22
+ Sensu Redis "reconnect_on_error" configuration option, to enable Redis
23
+ reconnect in the event of an unexpected error. This is set to false by
24
+ default, as some errors are unrecoverable. The Redis client will always
25
+ reconnect when there is a loss of connectivity.
26
+
14
27
  ### Other
15
28
 
16
29
  Fixed TLS/SSL on Windows.
@@ -171,7 +171,10 @@ module Sensu
171
171
  # Run a check extension and publish the result. The Sensu client
172
172
  # loads check extensions, checks that run within the Sensu Ruby
173
173
  # VM and the EventMachine event loop, using the Sensu Extension
174
- # API.
174
+ # API. If a check definition includes `:extension`, use it's
175
+ # value for the extension name, otherwise use the check name.
176
+ # The check definition is passed to the extension `safe_run()`
177
+ # method as a parameter, the extension may utilize it.
175
178
  #
176
179
  # https://github.com/sensu/sensu-extension
177
180
  #
@@ -179,8 +182,9 @@ module Sensu
179
182
  def run_check_extension(check)
180
183
  @logger.debug("attempting to run check extension", :check => check)
181
184
  check[:executed] = Time.now.to_i
182
- extension = @extensions[:checks][check[:name]]
183
- extension.safe_run do |output, status|
185
+ extension_name = check[:extension] || check[:name]
186
+ extension = @extensions[:checks][extension_name]
187
+ extension.safe_run(check) do |output, status|
184
188
  check[:output] = output
185
189
  check[:status] = status
186
190
  publish_check_result(check)
@@ -188,14 +192,19 @@ module Sensu
188
192
  end
189
193
 
190
194
  # Process a check request. If a check request has a check
191
- # command, it will be executed. A check request without a check
192
- # command indicates a check extension run. A check request will
193
- # be merged with a local check definition, if present. Client
194
- # safe mode is enforced in this method, requiring a local check
195
+ # command, it will be executed. A standard check request will be
196
+ # merged with a local check definition, if present. Client safe
197
+ # mode is enforced in this method, requiring a local check
195
198
  # definition in order to execute the check command. If a local
196
199
  # check definition does not exist when operating with client
197
200
  # safe mode, a check result will be published to report the
198
- # missing check definition.
201
+ # missing check definition. A check request without a
202
+ # command indicates a check extension run. The check request may
203
+ # contain `:extension`, the name of the extension to run. If
204
+ # `:extension` is not present, the check name is used for the
205
+ # extension name. If a check extension does not exist for a
206
+ # name, a check result will be published to report the unknown
207
+ # check extension.
199
208
  #
200
209
  # @param check [Hash]
201
210
  def process_check_request(check)
@@ -214,7 +223,8 @@ module Sensu
214
223
  execute_check_command(check)
215
224
  end
216
225
  else
217
- if @extensions.check_exists?(check[:name])
226
+ extension_name = check[:extension] || check[:name]
227
+ if @extensions.check_exists?(extension_name)
218
228
  run_check_extension(check)
219
229
  else
220
230
  @logger.warn("unknown check extension", :check => check)
@@ -1,7 +1,7 @@
1
1
  module Sensu
2
2
  unless defined?(Sensu::VERSION)
3
3
  # Sensu release version.
4
- VERSION = "0.17.0.beta.1"
4
+ VERSION = "0.17.0.beta.2"
5
5
 
6
6
  # Sensu check severities.
7
7
  SEVERITIES = %w[ok warning critical unknown]
data/lib/sensu/daemon.rb CHANGED
@@ -5,9 +5,9 @@ gem "eventmachine", "1.0.3"
5
5
 
6
6
  gem "sensu-em", "2.4.1"
7
7
  gem "sensu-logger", "1.0.0"
8
- gem "sensu-settings", "1.2.0"
8
+ gem "sensu-settings", "1.3.0"
9
9
  gem "sensu-extension", "1.1.2"
10
- gem "sensu-extensions", "1.1.0"
10
+ gem "sensu-extensions", "1.2.0"
11
11
  gem "sensu-transport", "2.4.0"
12
12
  gem "sensu-spawn", "1.1.0"
13
13
 
@@ -185,7 +185,11 @@ module Sensu
185
185
  @transport = Transport.connect(transport_name, transport_settings)
186
186
  @transport.on_error do |error|
187
187
  @logger.fatal("transport connection error", :error => error.to_s)
188
- stop
188
+ if @settings[:transport][:reconnect_on_error]
189
+ @transport.reconnect
190
+ else
191
+ stop
192
+ end
189
193
  end
190
194
  @transport.before_reconnect do
191
195
  unless testing?
data/lib/sensu/redis.rb CHANGED
@@ -1,4 +1,4 @@
1
- gem "em-redis-unified", "0.5.0"
1
+ gem "em-redis-unified", "0.6.0"
2
2
 
3
3
  require "em-redis"
4
4
 
data/sensu.gemspec CHANGED
@@ -19,12 +19,12 @@ Gem::Specification.new do |s|
19
19
  s.add_dependency "eventmachine", "1.0.3"
20
20
  s.add_dependency "sensu-em", "2.4.1"
21
21
  s.add_dependency "sensu-logger", "1.0.0"
22
- s.add_dependency "sensu-settings", "1.2.0"
22
+ s.add_dependency "sensu-settings", "1.3.0"
23
23
  s.add_dependency "sensu-extension", "1.1.2"
24
- s.add_dependency "sensu-extensions", "1.1.0"
24
+ s.add_dependency "sensu-extensions", "1.2.0"
25
25
  s.add_dependency "sensu-transport", "2.4.0"
26
26
  s.add_dependency "sensu-spawn", "1.1.0"
27
- s.add_dependency "em-redis-unified", "0.5.0"
27
+ s.add_dependency "em-redis-unified", "0.6.0"
28
28
  s.add_dependency "sinatra", "1.3.5"
29
29
  s.add_dependency "async_sinatra", "1.0.0"
30
30
  s.add_dependency "thin", "1.5.0" unless RUBY_PLATFORM =~ /java/
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0.beta.1
4
+ version: 0.17.0.beta.2
5
5
  platform: java
6
6
  authors:
7
7
  - Sean Porter
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-03-10 00:00:00.000000000 Z
12
+ date: 2015-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: multi_json
@@ -87,12 +87,12 @@ dependencies:
87
87
  requirements:
88
88
  - - '='
89
89
  - !ruby/object:Gem::Version
90
- version: 1.2.0
90
+ version: 1.3.0
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - '='
94
94
  - !ruby/object:Gem::Version
95
- version: 1.2.0
95
+ version: 1.3.0
96
96
  prerelease: false
97
97
  type: :runtime
98
98
  - !ruby/object:Gem::Dependency
@@ -115,12 +115,12 @@ dependencies:
115
115
  requirements:
116
116
  - - '='
117
117
  - !ruby/object:Gem::Version
118
- version: 1.1.0
118
+ version: 1.2.0
119
119
  requirement: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
- version: 1.1.0
123
+ version: 1.2.0
124
124
  prerelease: false
125
125
  type: :runtime
126
126
  - !ruby/object:Gem::Dependency
@@ -157,12 +157,12 @@ dependencies:
157
157
  requirements:
158
158
  - - '='
159
159
  - !ruby/object:Gem::Version
160
- version: 0.5.0
160
+ version: 0.6.0
161
161
  requirement: !ruby/object:Gem::Requirement
162
162
  requirements:
163
163
  - - '='
164
164
  - !ruby/object:Gem::Version
165
- version: 0.5.0
165
+ version: 0.6.0
166
166
  prerelease: false
167
167
  type: :runtime
168
168
  - !ruby/object:Gem::Dependency