pingable 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.
@@ -16,11 +16,16 @@ module Pingable
16
16
 
17
17
  def add_active_record!
18
18
  if defined?(ActiveRecord)
19
+ require 'timeout'
19
20
  add_check lambda {
20
21
  begin
21
- ActiveRecord::Base.verify_active_connections!
22
+ timeout(10) do
23
+ ActiveRecord::Base.verify_active_connections!
24
+ end
22
25
  ActiveRecord::Base.connection.execute('select 1')
23
26
  nil
27
+ rescue Timeout::Error
28
+ "ActiveRecord: Timed out"
24
29
  rescue Exception => e
25
30
  if e.class.name == e.message
26
31
  "ActiveRecord: #{e}"
@@ -12,7 +12,7 @@ module Pingable
12
12
  if failures.any?
13
13
  [503, HEADERS, failures.map { |f| f[:message] }.join("\n")]
14
14
  else
15
- [200, HEADERS, @name ||= '']
15
+ [200, HEADERS, (@name ||= '').dup]
16
16
  end
17
17
  end
18
18
 
@@ -1,3 +1,3 @@
1
1
  module Pingable
2
- VERSION = '0.0.4'
2
+ VERSION = '0.0.5'
3
3
  end
metadata CHANGED
@@ -1,46 +1,62 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: pingable
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.4
3
+ version: !ruby/object:Gem::Version
4
+ hash: 21
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 5
10
+ version: 0.0.5
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Alexander Staubo
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-01-27 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2012-01-27 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: rspec
16
- requirement: &70205298320220 !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
17
24
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
22
32
  type: :development
23
- prerelease: false
24
- version_requirements: *70205298320220
25
- - !ruby/object:Gem::Dependency
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
26
35
  name: rack
27
- requirement: &70205298319720 !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
28
38
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 23
43
+ segments:
44
+ - 1
45
+ - 0
46
+ - 0
32
47
  version: 1.0.0
33
48
  type: :runtime
34
- prerelease: false
35
- version_requirements: *70205298319720
36
- description: Pingable is a Rack handler that let an app respond to a path /ping, with
37
- pluggable checks.
38
- email:
49
+ version_requirements: *id002
50
+ description: Pingable is a Rack handler that let an app respond to a path /ping, with pluggable checks.
51
+ email:
39
52
  - alex@origo.no
40
53
  executables: []
54
+
41
55
  extensions: []
56
+
42
57
  extra_rdoc_files: []
43
- files:
58
+
59
+ files:
44
60
  - .gitignore
45
61
  - Gemfile
46
62
  - LICENSE
@@ -58,27 +74,36 @@ files:
58
74
  - pingable.gemspec
59
75
  homepage: http://github.com/origo/pingable
60
76
  licenses: []
77
+
61
78
  post_install_message:
62
79
  rdoc_options: []
63
- require_paths:
80
+
81
+ require_paths:
64
82
  - lib
65
- required_ruby_version: !ruby/object:Gem::Requirement
83
+ required_ruby_version: !ruby/object:Gem::Requirement
66
84
  none: false
67
- requirements:
68
- - - ! '>='
69
- - !ruby/object:Gem::Version
70
- version: '0'
71
- required_rubygems_version: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ hash: 3
89
+ segments:
90
+ - 0
91
+ version: "0"
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
72
93
  none: false
73
- requirements:
74
- - - ! '>='
75
- - !ruby/object:Gem::Version
76
- version: '0'
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ hash: 3
98
+ segments:
99
+ - 0
100
+ version: "0"
77
101
  requirements: []
102
+
78
103
  rubyforge_project: pingable
79
- rubygems_version: 1.8.15
104
+ rubygems_version: 1.8.6
80
105
  signing_key:
81
106
  specification_version: 3
82
- summary: Pingable is a Rack handler that let an app respond to a path /ping, with
83
- pluggable checks.
107
+ summary: Pingable is a Rack handler that let an app respond to a path /ping, with pluggable checks.
84
108
  test_files: []
109
+