heroku_mongo_watcher 0.2.2.beta → 0.2.3.beta

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.
@@ -1,3 +1,4 @@
1
+ require 'heroku_mongo_watcher'
1
2
  require 'heroku_mongo_watcher/configuration'
2
3
  require 'heroku_mongo_watcher/data_row'
3
4
  require 'trollop'
@@ -120,10 +121,10 @@ class HerokuMongoWatcher::CLI
120
121
 
121
122
  def self.check_and_notify_response_time
122
123
  return unless @current_row.total_requests > 200
123
- if @current_row.average_response_time > 10_000 || @current_row.error_rate > 1
124
+ if @current_row.average_response_time > 10_000 || @current_row.error_rate > 4
124
125
  notify "[SEVERE WARNING] Application not healthy | [#{@current_row.total_requests} rpm,#{@current_row.average_response_time} art]" unless @art_critical_notified
125
126
  @art_critical_notified = true
126
- elsif @current_row.average_response_time > 500 || @current_row.error_rate > 0.3 || @current_row.total_requests > 30_000
127
+ elsif @current_row.average_response_time > 500 || @current_row.error_rate > 1 || @current_row.total_requests > 30_000
127
128
  notify "[WARNING] Application heating up | [#{@current_row.total_requests} rpm,#{@current_row.average_response_time} art]" unless @art_warning_notified
128
129
  @art_warning_notified = true
129
130
  elsif @current_row.average_response_time < 300 && @current_row.total_requests < 25_000
@@ -1,5 +1,6 @@
1
1
  require 'singleton'
2
2
  require 'trollop'
3
+ require 'heroku_mongo_watcher'
3
4
 
4
5
  class HerokuMongoWatcher::Configuration
5
6
  include Singleton
@@ -1,4 +1,5 @@
1
1
  require 'term/ansicolor'
2
+ require 'heroku_mongo_watcher'
2
3
  require 'heroku_mongo_watcher/configuration'
3
4
  class HerokuMongoWatcher::DataRow
4
5
 
@@ -37,7 +38,7 @@ class HerokuMongoWatcher::DataRow
37
38
  end
38
39
 
39
40
  def error_rate
40
- total_requests > 0 ? (((total_web_errors + total_router_errors)*(1.0)) / total_requests).round(2) : 'N/A'
41
+ total_requests > 0 ? ((((total_web_errors + total_router_errors)*(1.0)) / total_requests)* 100).round(2) : 'N/A'
41
42
  end
42
43
 
43
44
  def process_heroku_router_line(line)
@@ -145,7 +146,7 @@ class HerokuMongoWatcher::DataRow
145
146
  color_print @max_service, warning: 20_000
146
147
  color_print @total_router_errors, warning: 1
147
148
  color_print @total_web_errors, warning: 1
148
- color_print error_rate, warning: 0.1, critical: 1, percent: true
149
+ color_print error_rate, warning: 1, critical: 3, percent: true
149
150
  color_print average_wait, warning: 10, critical: 100
150
151
  color_print average_queue, warning: 10, critical: 100
151
152
  color_print @slowest_request, length: 28, slice: 25
@@ -1,3 +1,3 @@
1
1
  module HerokuMongoWatcher
2
- VERSION = "0.2.2.beta"
2
+ VERSION = "0.2.3.beta"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heroku_mongo_watcher
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2.beta
4
+ version: 0.2.3.beta
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-07-24 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: term-ansicolor
16
- requirement: &2158189460 !ruby/object:Gem::Requirement
16
+ requirement: &2158070480 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2158189460
24
+ version_requirements: *2158070480
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: tlsmail
27
- requirement: &2158188100 !ruby/object:Gem::Requirement
27
+ requirement: &2158069020 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2158188100
35
+ version_requirements: *2158069020
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: heroku
38
- requirement: &2158186880 !ruby/object:Gem::Requirement
38
+ requirement: &2158068300 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *2158186880
46
+ version_requirements: *2158068300
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: trollop
49
- requirement: &2158186100 !ruby/object:Gem::Requirement
49
+ requirement: &2158067500 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2158186100
57
+ version_requirements: *2158067500
58
58
  description: Also notifies you when certain thresholds are hit. I have found this
59
59
  much more accurate than New Relic
60
60
  email: