kubernetes_health_checker 0.0.0.17 → 0.0.0.21

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
  SHA256:
3
- metadata.gz: fdfdca84d108f5bb2f4ee6912fcf166c720bca238b7f51218419055c58e1b3c6
4
- data.tar.gz: b5da5ff0da0ac21def85f1ed37ab81cfa125982155d8af46b723648b810fb72a
3
+ metadata.gz: 879489228694845d30ed10a2e0024d07024aea34ccd8ee9b444c199df9822166
4
+ data.tar.gz: fedee123976cc4438be07d0627f206ac99b15b0b6bc6bf13ff7f1be0bc2e7b16
5
5
  SHA512:
6
- metadata.gz: e079e08b3927bea6917777a17531182e2afa21edd28f9acb1d9adc4360d28195ba96a1f4d2ac4926dcbf692c037ac2e261cc22020c1cdb713a3600ccd79c1b8f
7
- data.tar.gz: d707a0f60b6ecca4df52a61871895744a0eca423ea0c825b16c48da243a5c1f5765f2803249c2a1301cd87f580d2aa8314ece373b8c6ef085a38359c04c3cdfc
6
+ metadata.gz: 9bf70e0983bbfa9c4a4947cf9b44e123a7cd8890165f09aa1b2fceecc844b667385525bebe6294db8b1f276fc770527e64323645fced4c7e85dd9b6e12508f4d
7
+ data.tar.gz: 8591f0d7f071c03e44eede7f97da91cfba45825ae8044c9f9e1b26826d1ab2c9a20f3dfcb03caac98db0c8593b99d8bfe23eb708430d4c79afb50447428c1b31
@@ -3,6 +3,7 @@
3
3
  require 'rubygems'
4
4
  require 'thor'
5
5
  require 'json'
6
+ require 'syslog/logger'
6
7
 
7
8
  module KubernetesHealthChecker
8
9
  class Runner < Thor
@@ -18,7 +19,8 @@ module KubernetesHealthChecker
18
19
  ALERT_STATUSES = %w[crashloopbackoff
19
20
  error
20
21
  runcontainererror
21
- createcontainerconfigerror].freeze
22
+ createcontainerconfigerror
23
+ oomkilled].freeze
22
24
 
23
25
  # time is in seconds
24
26
  TIMED_ALERT_STATUSES = {
@@ -30,15 +32,21 @@ module KubernetesHealthChecker
30
32
  RUN_INTERVAL = 10
31
33
 
32
34
  def start
33
- set_defaults(options)
34
- run_validations if !@test
35
- while true
36
- puts 'starting...'
37
- output = get_cli_output
38
- message = construct_message(output)
39
- send_alert(message) if !message.empty?
40
- puts 'sleeping...'
41
- sleep RUN_INTERVAL
35
+ log = Syslog::Logger.new 'kubernetes_health_checker'
36
+
37
+ begin
38
+ set_defaults(options)
39
+ run_validations if !@test
40
+ while true
41
+ puts 'starting...'
42
+ output = get_cli_output
43
+ message = construct_message(output)
44
+ send_alert(message) if !message.empty?
45
+ puts 'sleeping...'
46
+ sleep RUN_INTERVAL
47
+ end
48
+ rescue => e
49
+ log.error(e)
42
50
  end
43
51
  end
44
52
 
@@ -104,10 +112,10 @@ module KubernetesHealthChecker
104
112
  text = "Pod *#{pod_name}* is in status: *#{new_status}*.\n"
105
113
  elsif TIMED_ALERT_STATUSES.keys.include?(new_status.downcase)
106
114
  alert_threshold = TIMED_ALERT_STATUSES[new_status.downcase]
107
- if age > alert_threshold
115
+ if !age.nil? && age > alert_threshold
108
116
  text = "Pod #{pod_name} has been in status: *#{new_status}* for #{age} seconds :grimacing:.\n"
109
117
  end
110
- elsif new_restarts > @alert_threshold
118
+ elsif !new_restarts.nil? && new_restarts > @alert_threshold
111
119
  text = "Pod *#{pod_name}* has restarted *#{new_restarts}* times and has status: *#{new_status}*.\n"
112
120
  end
113
121
 
@@ -25,7 +25,7 @@ health-check-rc-wkh2t 1/1 Running 0
25
25
  helper-rc-17pmz 1/1 Running 0 22h
26
26
  import-companies-rc-grkkm 1/1 Running 0 1d
27
27
  import-company-metadata-rc-n094g 1/1 Running 0 22h
28
- import-crunchbase-metadata-rc-94433 1/1 Running 0 1d
28
+ import-crunchbase-metadata-rc-94433 1/1 OOMKilled 0 1d
29
29
  import-person-metadata-rc-wkvrg 1/1 Running 0 1d
30
30
  match-email-to-persons-consumer-rc-l6cgr 1/1 Running 0 22h
31
31
  match-event-to-persons-consumer-rc-w8jn1 1/1 Running 2 1d
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kubernetes_health_checker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0.17
4
+ version: 0.0.0.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rohan Sahai
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-23 00:00:00.000000000 Z
11
+ date: 2021-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: daemons
@@ -39,7 +39,35 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: byebug
42
+ name: pry
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: pry-byebug
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry-stack_explorer
43
71
  requirement: !ruby/object:Gem::Requirement
44
72
  requirements:
45
73
  - - ">="