kubernetes-health 3.4.2 → 3.5.0

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: 9d7d7ca3715c624f28575a1af905a79df3b2c3ce4b6d7370ecca88450a98e58e
4
- data.tar.gz: ec8c4cb288f68ac86904f15135308a49b801b814b14313ddb5d611e02243600e
3
+ metadata.gz: b35fdf1eae585364a30777a0f0c8d67210ab99d97c492c33ea7e9c5a71b7d01c
4
+ data.tar.gz: a4b4f532380c9295e6077d4aba889abb9a17c36889a713d7e84d864b8f9c8e6d
5
5
  SHA512:
6
- metadata.gz: b73ef9ee17ab78d1ec044a75ac71787fedb9d86e292bcccbf21a3ae55693db7b65cc4634204596ae815500f8cb040cf72e026352faaeed7b2e3e5251c09fc084
7
- data.tar.gz: 3663742f867ab3a01c97eb5c8ed93f6a2904f3e7d68540e1a3caf478f0c585e64d289e6a8523a4b64e2becd67a35da6d34b9d921808c3e14deb9289798ea6845
6
+ metadata.gz: 67cd817d32945e1f17f0b9363c393a408df9aec7352af14567d52a7562eab4969719b637f3c7acf3870595951f33a292ba9855c863b70bc125705f2b9f813ef1
7
+ data.tar.gz: ca42a6d7350435fb33c40521e4e2c72f2046af6fda5c634b3b4994960b8dea4af93d0015b037e80344559149ce329673dccdee6156baf9cabb98607f87519a6a
data/README.md CHANGED
@@ -15,7 +15,7 @@ This gem allows kubernetes monitoring your app while it is running migrates and
15
15
  Add this line to your application's Gemfile:
16
16
 
17
17
  ```ruby
18
- gem 'kubernetes-health', '~> 3.4'
18
+ gem 'kubernetes-health', '~> 3.5'
19
19
  ```
20
20
 
21
21
  ## Enabling puma plugin
@@ -128,7 +128,7 @@ Kubernetes::Health::Config.response_format = 'json'
128
128
  ## Customizing requests logs
129
129
 
130
130
  ```
131
- Kubernetes::Health::Config.request_log_callback = lambda { |req, http_code|
132
- Rails.logger.debug "Kubernetes Health: Rack on Migrate - Request: Path: #{req.path_info} / Params: #{req.params} / HTTP Code: #{http_code}" rescue nil
131
+ Kubernetes::Health::Config.request_log_callback = lambda { |req, http_code, content|
132
+ Rails.logger.debug "Kubernetes Health: Rack on Migrate - Request: Path: #{req.path_info} / Params: #{req.params} / HTTP Code: #{http_code}\n#{content}" rescue nil
133
133
  }
134
134
  ```
@@ -1,5 +1,5 @@
1
1
  module Kubernetes
2
2
  module Health
3
- VERSION = "3.4.2"
3
+ VERSION = "3.5.0"
4
4
  end
5
5
  end
@@ -28,17 +28,17 @@ module Puma
28
28
  when ::Kubernetes::Health::Config.route_metrics
29
29
  http_code = 200
30
30
  if ::Kubernetes::Health::Config.response_format == 'json'
31
- content = include_puma_key_prefix(include_usage(@launcher.stats)).to_json
31
+ content = include_puma_key_prefix(include_usage(merge_worker_status_if_needed(@launcher.stats))).to_json
32
32
  else
33
- @parser.parse include_usage(@launcher.stats)
33
+ @parser.parse include_usage(merge_worker_status_if_needed(@launcher.stats))
34
34
  content = Prometheus::Client::Formats::Text.marshal(Prometheus::Client.registry)
35
35
  end
36
36
  else
37
37
  http_code = 404
38
38
  end
39
39
  rescue => e
40
- Rails.logger.error e.message
41
- Rails.logger.error e.backtrace.join("\n")
40
+ puts e.message
41
+ puts e.backtrace.join("\n")
42
42
  http_code = 500
43
43
  content = ''
44
44
  end
@@ -46,6 +46,15 @@ module Puma
46
46
  [http_code, type, [content]]
47
47
  end
48
48
 
49
+ def merge_worker_status_if_needed(stats)
50
+ return stats unless stats[:worker_status]
51
+
52
+ merded_stats = stats[:worker_status].map { |ws| ws[:last_status] }.inject({}) { |sum, hash| sum.merge(hash) { |_key, val1, val2| val1+val2 } }
53
+ merded_stats[:puma_started_at] = stats[:puma_started_at]
54
+ merded_stats[:worker_status] = stats[:worker_status]
55
+ merded_stats
56
+ end
57
+
49
58
  def include_usage(stats)
50
59
  if stats.is_a?(String)
51
60
  # puma <= 4.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kubernetes-health
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.2
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wagner Caixeta
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-08-26 00:00:00.000000000 Z
11
+ date: 2022-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -145,7 +145,7 @@ files:
145
145
  homepage: https://github.com/platbr/kubernetes-health
146
146
  licenses: []
147
147
  metadata: {}
148
- post_install_message:
148
+ post_install_message:
149
149
  rdoc_options: []
150
150
  require_paths:
151
151
  - lib
@@ -161,7 +161,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
161
161
  version: '0'
162
162
  requirements: []
163
163
  rubygems_version: 3.1.4
164
- signing_key:
164
+ signing_key:
165
165
  specification_version: 4
166
166
  summary: This gem allows kubernetes monitoring your app while it is running migrates
167
167
  and after it started.