health-monitor-rails 0.0.4 → 0.0.5
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/README.md +2 -1
- data/app/controllers/health_monitor/health_controller.rb +2 -2
- data/lib/health_monitor/providers/cache.rb +4 -0
- data/lib/health_monitor/providers/database.rb +4 -5
- data/lib/health_monitor/providers/resque.rb +15 -0
- data/lib/health_monitor/providers/sidekiq.rb +1 -1
- data/lib/health_monitor/version.rb +1 -1
- metadata +21 -4
data/README.md
CHANGED
@@ -33,7 +33,7 @@ $ gem install health-monitor-rails
|
|
33
33
|
You can mount this inside your app routes by adding this to config/routes.rb:
|
34
34
|
|
35
35
|
```ruby
|
36
|
-
mount HealthMonitor::Engine
|
36
|
+
mount HealthMonitor::Engine, at: '/'
|
37
37
|
```
|
38
38
|
|
39
39
|
## Supported service providers
|
@@ -42,6 +42,7 @@ The following services are currently supported:
|
|
42
42
|
* Cache
|
43
43
|
* Redis
|
44
44
|
* Sidekiq
|
45
|
+
* Resque
|
45
46
|
|
46
47
|
## Configuration
|
47
48
|
|
@@ -6,9 +6,9 @@ module HealthMonitor
|
|
6
6
|
def check
|
7
7
|
HealthMonitor.check!
|
8
8
|
|
9
|
-
render text: "
|
9
|
+
render text: "Health check has passed: #{Time.now.to_s(:db)}\n"
|
10
10
|
rescue Exception => e
|
11
|
-
render text: "
|
11
|
+
render text: "Health check has failed: #{Time.now.to_s(:db)}, error: #{e.message}\n",
|
12
12
|
:status => :service_unavailable
|
13
13
|
end
|
14
14
|
|
@@ -1,5 +1,7 @@
|
|
1
1
|
module HealthMonitor
|
2
2
|
module Providers
|
3
|
+
class CacheException < StandardError; end
|
4
|
+
|
3
5
|
class Cache
|
4
6
|
def check!
|
5
7
|
time = Time.now.to_s
|
@@ -8,6 +10,8 @@ module HealthMonitor
|
|
8
10
|
fetched = Rails.cache.read(:health)
|
9
11
|
|
10
12
|
raise "different values (now: #{time}, fetched: #{fetched}" if fetched != time
|
13
|
+
rescue Exception => e
|
14
|
+
raise CacheException.new(e.message)
|
11
15
|
end
|
12
16
|
end
|
13
17
|
end
|
@@ -1,14 +1,13 @@
|
|
1
1
|
module HealthMonitor
|
2
2
|
module Providers
|
3
|
-
class
|
3
|
+
class DatabaseException < StandardError; end
|
4
4
|
|
5
5
|
class Database
|
6
6
|
def check!
|
7
7
|
# Check connection to the DB:
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
raise DBException.new(e.message)
|
8
|
+
ActiveRecord::Migrator.current_version
|
9
|
+
rescue Exception => e
|
10
|
+
raise DatabaseException.new(e.message)
|
12
11
|
end
|
13
12
|
end
|
14
13
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: health-monitor-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-02-
|
12
|
+
date: 2014-02-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -171,6 +171,22 @@ dependencies:
|
|
171
171
|
- - ! '>='
|
172
172
|
- !ruby/object:Gem::Version
|
173
173
|
version: '0'
|
174
|
+
- !ruby/object:Gem::Dependency
|
175
|
+
name: resque
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
178
|
+
requirements:
|
179
|
+
- - ! '>='
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0'
|
182
|
+
type: :development
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
186
|
+
requirements:
|
187
|
+
- - ! '>='
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0'
|
174
190
|
description: Health monitoring Rails plug-in, which checks various services (db, cache,
|
175
191
|
sidekiq, redis, etc.).
|
176
192
|
email:
|
@@ -188,6 +204,7 @@ files:
|
|
188
204
|
- lib/health_monitor/providers/cache.rb
|
189
205
|
- lib/health_monitor/providers/database.rb
|
190
206
|
- lib/health_monitor/providers/redis.rb
|
207
|
+
- lib/health_monitor/providers/resque.rb
|
191
208
|
- lib/health_monitor/providers/sidekiq.rb
|
192
209
|
- lib/health_monitor/version.rb
|
193
210
|
- Rakefile
|
@@ -207,7 +224,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
207
224
|
version: '0'
|
208
225
|
segments:
|
209
226
|
- 0
|
210
|
-
hash:
|
227
|
+
hash: 3257561467928893271
|
211
228
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
229
|
none: false
|
213
230
|
requirements:
|
@@ -216,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
216
233
|
version: '0'
|
217
234
|
segments:
|
218
235
|
- 0
|
219
|
-
hash:
|
236
|
+
hash: 3257561467928893271
|
220
237
|
requirements: []
|
221
238
|
rubyforge_project:
|
222
239
|
rubygems_version: 1.8.25
|