okcomputer 0.6.0 → 0.7.0

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: b812534cc64ea2d62713fc45f157328f39cc65bd
4
- data.tar.gz: 9491b4230918e0f3a5ee6b659894df6d4175db77
3
+ metadata.gz: 3a38df5e1069db78fedda2655d6b741d26e2df89
4
+ data.tar.gz: 71173a3054b80f1eb1b63c0f41881543affa4184
5
5
  SHA512:
6
- metadata.gz: d13b8ef6db3eef841b9004e50ce131e9b9bc9facfdd891926ad23b92a506ad2b1ccfba87ad3a870697b6b228980444a16cc7ba77a5a227130b94995db60004c7
7
- data.tar.gz: 8b03ede46d95b674fe64dade6ca95a3579ea74c97452bc129be28ab54bae7e9445b4d25304ee59abf7376166d46d006700d9a8980cc69a9e47ec4599c4d89940
6
+ metadata.gz: 62a0d7a18575982c768012957c05482a2ad1c159741aef7de3c5349bc0bf97b375745ea718b3ffecbfeb1c5f374d1cad8bbd94f37195882d5f901259257d6833
7
+ data.tar.gz: 429ab7284ea63dcd63eb8959712d0953bdf708cb85986562d7d7638aa2780746bceb037f1cdcfc581bb9c47aa9f430d5970cef126dadc66bd613ad8780e69f51
data/README.markdown CHANGED
@@ -40,12 +40,12 @@ We also include a MongoidCheck, but do not register it. If you use Mongoid,
40
40
  replace the default ActiveRecord check like so:
41
41
 
42
42
  ```ruby
43
- OKComputer::Registry.register "database", OKComputer::MongoidCheck.new
43
+ OkComputer::Registry.register "database", OkComputer::MongoidCheck.new
44
44
  ```
45
45
 
46
46
  If you use another database adapter, see Registering Custom Checks below to
47
47
  build your own database check and register it with the name "database" to
48
- replace the built-in check, or use `OKComputer::Registry.deregister "database"`
48
+ replace the built-in check, or use `OkComputer::Registry.deregister "database"`
49
49
  to stop checking your database altogether.
50
50
 
51
51
  ### Requiring Authentication
@@ -54,7 +54,29 @@ Optionally require HTTP Basic authentication to view the results of checks in an
54
54
 
55
55
  ```ruby
56
56
  # config/initializers/okcomputer.rb
57
- OKComputer.require_authentication("username", "password")
57
+ OkComputer.require_authentication("username", "password")
58
+ ```
59
+
60
+ ### Changing the OkComputer Route
61
+
62
+ By default, OkComputer routes are mounted at `/okcomputer`. If you'd like to use an alternate route,
63
+ you can configure it with:
64
+
65
+ ```ruby
66
+ # config/initializers/okcomputer.rb
67
+ OkComputer.mount_at = 'health_checks' # mounts at /health_checks
68
+ ```
69
+
70
+ For more control of adding OkComputer to your routes, set `OkComputer.mount_at
71
+ = false` to disable automatic mounting, and you can manually mount the engine
72
+ in your `routes.rb`.
73
+
74
+ ```ruby
75
+ # config/initializers/okcomputer.rb
76
+ OkComputer.mount_at = false
77
+
78
+ # config/routes.rb, at any priority that suits you
79
+ mount OkComputer::Engine, at: "/custom_path"
58
80
  ```
59
81
 
60
82
  ### Registering Additional Checks
@@ -63,20 +85,20 @@ Register additional checks in an initializer, like so:
63
85
 
64
86
  ```ruby
65
87
  # config/initializers/okcomputer.rb
66
- OKComputer::Registry.register "resque_down", OKComputer::ResqueDownCheck.new
67
- OKComputer::Registry.register "resque_backed_up", OKComputer::ResqueBackedUpCheck.new("critical", 100)
88
+ OkComputer::Registry.register "resque_down", OkComputer::ResqueDownCheck.new
89
+ OkComputer::Registry.register "resque_backed_up", OkComputer::ResqueBackedUpCheck.new("critical", 100)
68
90
  ```
69
91
 
70
92
  ### Registering Custom Checks
71
93
 
72
94
  The simplest way to register a check unique to your application is to subclass
73
- OKComputer::Check and implement your own `#check` method, which sets the
95
+ OkComputer::Check and implement your own `#check` method, which sets the
74
96
  display message with `mark_message`, and calls `mark_failure` if anything is
75
97
  wrong.
76
98
 
77
99
  ```ruby
78
100
  # config/initializers/okcomputer.rb
79
- class MyCustomCheck < OKComputer::Check
101
+ class MyCustomCheck < OkComputer::Check
80
102
  def check
81
103
  if rand(10).even?
82
104
  mark_message "Even is great!"
@@ -87,7 +109,7 @@ class MyCustomCheck < OKComputer::Check
87
109
  end
88
110
  end
89
111
 
90
- OKComputer::Registry.register "check_for_odds", MyCustomCheck.new
112
+ OkComputer::Registry.register "check_for_odds", MyCustomCheck.new
91
113
  ```
92
114
 
93
115
  ## Performing Checks
@@ -102,19 +124,22 @@ Checks are available as plain text (by default) or JSON by appending .json, e.g.
102
124
 
103
125
  ## OkComputer NewRelic Ignore
104
126
 
105
- If you use OKComputer for uptime checks, it will start to artificially bring your
106
- request time down on NewRelic. To avoid that, check out
107
- [this gem](https://github.com/sportngin/okcomputer-newrelic-ignore).
127
+ If NewRelic is installed, OkComputer automatically disables NewRelic monitoring for uptime checks,
128
+ as it will start to artificially bring your request time down.
129
+
130
+ If you'd like to intentionally count OkComputer requests in your NewRelic analytics, set:
131
+
132
+ ```
133
+ # config/initializers/okcomputer.rb
134
+ OkComputer.analytics_ignore = false
135
+ ```
108
136
 
109
137
  ## Deprecations and Breaking Changes
110
138
 
111
- #### Deprecation of Check#call
139
+ #### Namespace change from `OKComputer` to `OkComputer`
112
140
 
113
- Versions before 0.2.0 implemented a "#call" method which returned the message.
114
- This has been deprecated and will be removed in a future version. Please
115
- define a #check method which calls `mark_failure` and `mark_message` as
116
- appropriate. In the meantime, OKComputer displays a warning and uses the result
117
- of the #call method as the message.
141
+ OkComputer has changed its namespace from `OKComputer` (uppercase K) to `OkComputer` (lowercase k)
142
+ as of version 0.7.0. Please update your configuration accordingly.
118
143
 
119
144
  #### Breaking Changes of JSON Output
120
145
 
@@ -145,6 +170,14 @@ example:
145
170
  {"check": "result", "other": "result"}
146
171
  ```
147
172
 
173
+ #### Deprecation of Check#call
174
+
175
+ Versions before 0.2.0 implemented a "#call" method which returned the message.
176
+ This has been deprecated and will be removed in a future version. Please
177
+ define a #check method which calls `mark_failure` and `mark_message` as
178
+ appropriate. In the meantime, OkComputer displays a warning and uses the result
179
+ of the #call method as the message.
180
+
148
181
  ## Contributing
149
182
 
150
183
  1. Fork it
data/Rakefile CHANGED
@@ -5,9 +5,6 @@ rescue LoadError
5
5
  puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
6
  end
7
7
 
8
- APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
9
- load 'rails/tasks/engine.rake'
10
-
11
8
  Bundler::GemHelper.install_tasks
12
9
 
13
10
  task :default => :spec
@@ -0,0 +1,55 @@
1
+ module OkComputer
2
+ class OkComputerController < ActionController::Base
3
+ layout nil
4
+ respond_to :text, :html, :json
5
+
6
+ before_filter :authenticate
7
+
8
+ if OkComputer.analytics_ignore && defined?(NewRelic::Agent::Instrumentation::ControllerInstrumentation)
9
+ include NewRelic::Agent::Instrumentation::ControllerInstrumentation
10
+ newrelic_ignore if respond_to?(:newrelic_ignore)
11
+ end
12
+
13
+ rescue_from OkComputer::Registry::CheckNotFound do |e|
14
+ respond_to do |f|
15
+ f.any(:text, :html) { render text: e.message, status: :not_found }
16
+ f.json { render json: { error: e.message }, status: :not_found }
17
+ end
18
+ end
19
+
20
+ def index
21
+ checks = OkComputer::Registry.all
22
+ checks.run
23
+
24
+ respond checks, status_code(checks)
25
+ end
26
+
27
+ def show
28
+ check = OkComputer::Registry.fetch(params[:check])
29
+ check.run
30
+
31
+ respond check, status_code(check)
32
+ end
33
+
34
+ private
35
+
36
+ def respond(data, status)
37
+ respond_to do |format|
38
+ format.any(:text, :html) { render text: data, status: status }
39
+ format.json { render json: data, status: status }
40
+ end
41
+ end
42
+
43
+ def status_code(check)
44
+ check.success? ? :ok : :error
45
+ end
46
+
47
+ def authenticate
48
+ if OkComputer.requires_authentication?(params)
49
+ authenticate_or_request_with_http_basic do |username, password|
50
+ OkComputer.authenticate(username, password)
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
data/config/routes.rb CHANGED
@@ -1,5 +1,12 @@
1
- Rails.application.routes.draw do
2
- match "/okcomputer" => "ok_computer#show", defaults: {check: "default"}, via: [:get, :options]
3
- match "/okcomputer/all" => "ok_computer#index", via: [:get, :options]
4
- match "/okcomputer/:check" => "ok_computer#show", via: [:get, :options]
1
+ OkComputer::Engine.routes.draw do
2
+ root to: "ok_computer#show", defaults: {check: "default"}, via: [:get, :options]
3
+ match "/all" => "ok_computer#index", via: [:get, :options]
4
+ match "/:check" => "ok_computer#show", via: [:get, :options]
5
+ end
6
+
7
+ if OkComputer.mount_at
8
+ # prepend sets at a higher priority than "catchall" routes
9
+ Rails.application.routes.prepend do
10
+ mount OkComputer::Engine => OkComputer.mount_at, as: "okcomputer"
11
+ end
5
12
  end
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class ActiveRecordCheck < Check
3
3
  # Public: Return the schema version of the database
4
4
  def check
@@ -0,0 +1,32 @@
1
+ module OkComputer
2
+ class CacheCheck < Check
3
+
4
+ ConnectionFailed = Class.new(StandardError)
5
+
6
+ # Public: Check whether the cache is active
7
+ def check
8
+ mark_message "Cache is available (#{stats})"
9
+ rescue ConnectionFailed => e
10
+ mark_failure
11
+ mark_message "Error: '#{e}'"
12
+ end
13
+
14
+ # Public: Outputs stats string for cache
15
+ def stats
16
+ stats = Rails.cache.stats
17
+ host = stats.select{|k,v| k =~ Regexp.new(Socket.gethostname) }.values[0]
18
+ mem_used = to_megabytes host['bytes']
19
+ mem_max = to_megabytes host['limit_maxbytes']
20
+ return "#{mem_used} / #{mem_max} MB, #{stats.count - 1} peers"
21
+ rescue => e
22
+ raise ConnectionFailed, e
23
+ end
24
+
25
+ private
26
+
27
+ # Private: Convert bytes to megabytes
28
+ def to_megabytes(bytes)
29
+ bytes.to_i / (1024 * 1024)
30
+ end
31
+ end
32
+ end
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class DefaultCheck < Check
3
3
  # Public: Check that Rails can render anything at all
4
4
  def check
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class DelayedJobBackedUpCheck < SizeThresholdCheck
3
3
  attr_accessor :priority
4
4
  attr_accessor :threshold
@@ -22,7 +22,11 @@ module OKComputer
22
22
 
23
23
  # Public: How many delayed jobs are pending within the given priority
24
24
  def size
25
- Delayed::Job.where("priority <= ?", priority).where(:locked_at => nil, :last_error => nil).count
25
+ if defined?(::Delayed::Backend::Mongoid::Job) && Delayed::Worker.backend == Delayed::Backend::Mongoid::Job
26
+ Delayed::Job.lte(priority: priority).where(:locked_at => nil, :last_error => nil).count
27
+ else
28
+ Delayed::Job.where("priority <= ?", priority).where(:locked_at => nil, :last_error => nil).count
29
+ end
26
30
  end
27
31
  end
28
32
  end
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class MongoidCheck < Check
3
3
  # Public: Return the status of the mongodb
4
4
  def check
@@ -12,7 +12,11 @@ module OKComputer
12
12
  #
13
13
  # Returns a hash with the status of the db
14
14
  def mongodb_stats
15
- Mongoid.database.stats
15
+ if Mongoid.respond_to?(:default_session)
16
+ Mongoid.default_session.command(dbStats: 1) # Mongoid 3+
17
+ else
18
+ Mongoid.database.stats # Mongoid 2
19
+ end
16
20
  rescue => e
17
21
  raise ConnectionFailed, e
18
22
  end
@@ -27,4 +31,3 @@ module OKComputer
27
31
  ConnectionFailed = Class.new(StandardError)
28
32
  end
29
33
  end
30
-
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class ResqueBackedUpCheck < SizeThresholdCheck
3
3
  attr_accessor :queue
4
4
  attr_accessor :threshold
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class ResqueDownCheck < Check
3
3
  # Public: Check whether Resque workers are working
4
4
  def check
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class RubyVersionCheck < Check
3
3
  def check
4
4
  mark_message "Ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}"
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class SizeThresholdCheck < Check
3
3
  attr_accessor :size_proc
4
4
  attr_accessor :threshold
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class Check
3
3
  CALL_DEPRECATION_MESSAGE = "Deprecation warning: Please define #check rather than defining #call"
4
4
 
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  class CheckCollection
3
3
  attr_accessor :registry
4
4
 
@@ -1,4 +1,4 @@
1
- module OKComputer
1
+ module OkComputer
2
2
  # Public: Configure HTTP Basic authentication
3
3
  #
4
4
  # username - Username required to view checks
@@ -8,10 +8,10 @@ module OKComputer
8
8
  #
9
9
  # Examples:
10
10
  #
11
- # OKComputer.require_authentication("foo", "bar")
11
+ # OkComputer.require_authentication("foo", "bar")
12
12
  # # => Require authentication with foo:bar for all checks
13
13
  #
14
- # OKComputer.require_authentication("foo", "bar", except: %w(default nonsecret))
14
+ # OkComputer.require_authentication("foo", "bar", except: %w(default nonsecret))
15
15
  # # => Require authentication with foo:bar for all checks except the checks named "default" and "nonsecret"
16
16
  def self.require_authentication(username, password, options = {})
17
17
  self.username = username
@@ -31,7 +31,7 @@ module OKComputer
31
31
  username == username_try && password == password_try
32
32
  end
33
33
 
34
- # Public: Whether OKComputer is configured to require authentication
34
+ # Public: Whether OkComputer is configured to require authentication
35
35
  #
36
36
  # Returns a Boolean
37
37
  def self.requires_authentication?(params={})
@@ -40,41 +40,28 @@ module OKComputer
40
40
  username && password
41
41
  end
42
42
 
43
- # attr_accessor isn't doing what I want inside a module, so here we go.
43
+ # Public: The route to automatically mount the OkComputer engine. Setting to false
44
+ # prevents OkComputer from automatically mounting itself.
45
+ mattr_accessor :mount_at
46
+ self.mount_at = 'okcomputer'
44
47
 
45
- # Private: The username configured for access to checks
46
- def self.username
47
- @username
48
- end
49
- private_class_method :username
48
+ # Public: Option to disable third-party app performance tools (.e.g NewRelic) from counting OkComputer routes towards their total.
49
+ mattr_accessor :analytics_ignore
50
+ self.analytics_ignore = true
50
51
 
51
- # Private: Configure the username to access checks
52
- def self.username=(username)
53
- @username = username
54
- end
52
+ # Private: The username for access to checks
53
+ mattr_accessor :username
54
+ private_class_method :username
55
55
  private_class_method :username=
56
56
 
57
- # Private: The password configured for access to checks
58
- def self.password
59
- @password
60
- end
57
+ # Private: The password for access to checks
58
+ mattr_accessor :password
61
59
  private_class_method :password
62
-
63
- # Private: Configure the password to access checks
64
- def self.password=(password)
65
- @password = password
66
- end
67
60
  private_class_method :password=
68
61
 
69
- # Private: Set, you know, options
70
- def self.options=(options)
71
- @options = options
72
- end
73
-
74
- # Private: Get, you know, options
75
- def self.options
76
- @options || {}
77
- end
62
+ # Private: The options container
63
+ mattr_accessor :options
64
+ self.options = {}
78
65
 
79
66
  # Private: Configure a whitelist of checks to skip authentication
80
67
  def self.whitelist
@@ -0,0 +1,5 @@
1
+ module OkComputer
2
+ class Engine < ::Rails::Engine
3
+ isolate_namespace OkComputer
4
+ end
5
+ end
@@ -1,8 +1,8 @@
1
- # Private: Storage of the checks which have been registered with OKComputer.
1
+ # Private: Storage of the checks which have been registered with OkComputer.
2
2
  #
3
3
  # No one is expected to interact directly with this class, but rather through
4
- # the outer OKComputer interface.
5
- module OKComputer
4
+ # the outer OkComputer interface.
5
+ module OkComputer
6
6
  class Registry
7
7
  # Public: Return the check registered to the given name
8
8
  #
@@ -22,7 +22,7 @@ module OKComputer
22
22
  CheckCollection.new registry
23
23
  end
24
24
 
25
- # Public: Register the given check with OKComputer
25
+ # Public: Register the given check with OkComputer
26
26
  #
27
27
  # check_name - The name of the check to retrieve
28
28
  # check_object - Instance of Checker to register
@@ -0,0 +1,3 @@
1
+ module OkComputer
2
+ VERSION = "0.7.0"
3
+ end
data/lib/okcomputer.rb CHANGED
@@ -1,22 +1,26 @@
1
- require "okcomputer/engine"
2
- require "okcomputer/configuration"
3
- require "okcomputer/check"
4
- require "okcomputer/check_collection"
5
- require "okcomputer/registry"
1
+ require "ok_computer/engine"
2
+ require "ok_computer/configuration"
3
+ require "ok_computer/check"
4
+ require "ok_computer/check_collection"
5
+ require "ok_computer/registry"
6
6
 
7
7
  # and the built-in checks
8
- require "okcomputer/built_in_checks/size_threshold_check"
9
- require "okcomputer/built_in_checks/active_record_check"
10
- require "okcomputer/built_in_checks/default_check"
11
- require "okcomputer/built_in_checks/mongoid_check"
12
- require "okcomputer/built_in_checks/resque_backed_up_check"
13
- require "okcomputer/built_in_checks/resque_down_check"
14
- require "okcomputer/built_in_checks/delayed_job_backed_up_check"
15
- require "okcomputer/built_in_checks/ruby_version_check"
8
+ require "ok_computer/built_in_checks/size_threshold_check"
9
+ require "ok_computer/built_in_checks/active_record_check"
10
+ require "ok_computer/built_in_checks/default_check"
11
+ require "ok_computer/built_in_checks/mongoid_check"
12
+ require "ok_computer/built_in_checks/resque_backed_up_check"
13
+ require "ok_computer/built_in_checks/resque_down_check"
14
+ require "ok_computer/built_in_checks/delayed_job_backed_up_check"
15
+ require "ok_computer/built_in_checks/ruby_version_check"
16
+ require "ok_computer/built_in_checks/cache_check"
16
17
 
18
+ # Remove the following code in version 1.0.0
17
19
  module OKComputer
20
+ def self.method_missing(*args)
21
+ raise 'Please replace all usages of `OKComputer` with `OkComputer` (lowercase `k`)'
22
+ end
18
23
  end
19
24
 
20
- OKComputer::Registry.register "default", OKComputer::DefaultCheck.new
21
- OKComputer::Registry.register "database", OKComputer::ActiveRecordCheck.new
22
-
25
+ OkComputer::Registry.register "default", OkComputer::DefaultCheck.new
26
+ OkComputer::Registry.register "database", OkComputer::ActiveRecordCheck.new
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: okcomputer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrick Byrne
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-26 00:00:00.000000000 Z
11
+ date: 2014-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sqlite3
@@ -65,29 +65,33 @@ files:
65
65
  - MIT-LICENSE
66
66
  - README.markdown
67
67
  - Rakefile
68
- - app/controllers/ok_computer_controller.rb
68
+ - app/controllers/ok_computer/ok_computer_controller.rb
69
69
  - config/routes.rb
70
+ - lib/ok_computer/built_in_checks/active_record_check.rb
71
+ - lib/ok_computer/built_in_checks/cache_check.rb
72
+ - lib/ok_computer/built_in_checks/default_check.rb
73
+ - lib/ok_computer/built_in_checks/delayed_job_backed_up_check.rb
74
+ - lib/ok_computer/built_in_checks/mongoid_check.rb
75
+ - lib/ok_computer/built_in_checks/resque_backed_up_check.rb
76
+ - lib/ok_computer/built_in_checks/resque_down_check.rb
77
+ - lib/ok_computer/built_in_checks/ruby_version_check.rb
78
+ - lib/ok_computer/built_in_checks/size_threshold_check.rb
79
+ - lib/ok_computer/check.rb
80
+ - lib/ok_computer/check_collection.rb
81
+ - lib/ok_computer/configuration.rb
82
+ - lib/ok_computer/engine.rb
83
+ - lib/ok_computer/registry.rb
84
+ - lib/ok_computer/version.rb
70
85
  - lib/okcomputer.rb
71
- - lib/okcomputer/built_in_checks/active_record_check.rb
72
- - lib/okcomputer/built_in_checks/default_check.rb
73
- - lib/okcomputer/built_in_checks/delayed_job_backed_up_check.rb
74
- - lib/okcomputer/built_in_checks/mongoid_check.rb
75
- - lib/okcomputer/built_in_checks/resque_backed_up_check.rb
76
- - lib/okcomputer/built_in_checks/resque_down_check.rb
77
- - lib/okcomputer/built_in_checks/ruby_version_check.rb
78
- - lib/okcomputer/built_in_checks/size_threshold_check.rb
79
- - lib/okcomputer/check.rb
80
- - lib/okcomputer/check_collection.rb
81
- - lib/okcomputer/configuration.rb
82
- - lib/okcomputer/engine.rb
83
- - lib/okcomputer/registry.rb
84
- - lib/okcomputer/version.rb
85
- - lib/tasks/okcomputer_tasks.rake
86
86
  homepage: https://github.com/sportngin/okcomputer
87
87
  licenses:
88
88
  - MIT
89
89
  metadata: {}
90
- post_install_message:
90
+ post_install_message: |
91
+ OkComputer Namespace Change (v0.7.0)
92
+ ------------------------------------
93
+ OkComputer has changed its namespace from `OKComputer` (uppercase K) to `OkComputer` (lowercase k)
94
+ as of version 0.7.0. Please update your configuration accordingly.
91
95
  rdoc_options: []
92
96
  require_paths:
93
97
  - lib
@@ -103,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
107
  version: '0'
104
108
  requirements: []
105
109
  rubyforge_project:
106
- rubygems_version: 2.2.0
110
+ rubygems_version: 2.2.2
107
111
  signing_key:
108
112
  specification_version: 4
109
113
  summary: A simple, extensible health-check monitor
@@ -1,48 +0,0 @@
1
- class OkComputerController < ActionController::Base
2
- layout nil
3
- respond_to :text, :html, :json
4
-
5
- before_filter :authenticate
6
-
7
- rescue_from OKComputer::Registry::CheckNotFound do |e|
8
- respond_to do |f|
9
- f.any(:text, :html) { render text: e.message, status: :not_found }
10
- f.json { render json: { error: e.message }, status: :not_found }
11
- end
12
- end
13
-
14
- def index
15
- checks = OKComputer::Registry.all
16
- checks.run
17
-
18
- respond checks, status_code(checks)
19
- end
20
-
21
- def show
22
- check = OKComputer::Registry.fetch(params[:check])
23
- check.run
24
-
25
- respond check, status_code(check)
26
- end
27
-
28
- private
29
-
30
- def respond(data, status)
31
- respond_to do |format|
32
- format.any(:text, :html) { render text: data, status: status }
33
- format.json { render json: data, status: status }
34
- end
35
- end
36
-
37
- def status_code(check)
38
- check.success? ? :ok : :error
39
- end
40
-
41
- def authenticate
42
- if OKComputer.requires_authentication?(params)
43
- authenticate_or_request_with_http_basic do |username, password|
44
- OKComputer.authenticate(username, password)
45
- end
46
- end
47
- end
48
- end
@@ -1,7 +0,0 @@
1
- module OKComputer
2
- class Engine < ::Rails::Engine
3
- config.generators do |g|
4
- g.test_framework :rspec, :view_specs => false
5
- end
6
- end
7
- end
@@ -1,3 +0,0 @@
1
- module OKComputer
2
- VERSION = "0.6.0"
3
- end
@@ -1,4 +0,0 @@
1
- # desc "Explaining what the task does"
2
- # task :okcomputer do
3
- # # Task goes here
4
- # end