bc-prometheus-ruby 0.5.1 → 0.6.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
  SHA256:
3
- metadata.gz: 4a5bc3a1ae57f782c0f94d6cf490830fce96e78ab0f782a4761cad8dcc5850ae
4
- data.tar.gz: 694ede704dc83a7c9fd0f1abfd4300bd7e464b464b305833be44c7b06bf62bd5
3
+ metadata.gz: a698cc0ac06efacbba9d2448adf0cac2c1f1f54468ee3ba4c14fab8e5c25e012
4
+ data.tar.gz: f8c629aa6c16174692bf804271af7edbf1f087d9abb7bc2ff32400a01d00a001
5
5
  SHA512:
6
- metadata.gz: 20a0ccb53fc272f5f80425503fe492908c6cca2a01186b0489141091239671e848d4930ba29c54ada04c78149ebbda6f2f240880e0da24d2bc7a5b7b98c2b8bc
7
- data.tar.gz: ebe5d43de15abe3d933050add69fb785280506bbe6f6acab6065eee215534aeb61bd025eaec545ca9bd682083b7751e01a1569c80daa43313dfaeac72b7d5163
6
+ metadata.gz: e7b37136f17cc98bd2f8c88adc4668f4685965602453261a27ff90516788c86d6571ceb15158e7fd0a3fb78f42e31c6cafbd4beacf4b590f6e82395682c33174
7
+ data.tar.gz: 5879abda273f9d1b127483f7ee0f6083bc013fe4376033e15f917a62113d1727b4d32e34381e98dbbab90981fd7e7e124242775cd3c18e6e792b4a451ecd7aa2
data/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@ Changelog for the bc-prometheus-ruby gem.
2
2
 
3
3
  ### Pending Release
4
4
 
5
+ ## 0.6.0
6
+
7
+ - Add support for Ruby 3.1/3.2
8
+ - Drop support for Ruby 2
9
+ - Add CodeClimate analysis
10
+
11
+ ## 0.5.2
12
+
13
+ - Better error handling post-fork for web/resque instrumentors
14
+ - Fix issue with using `Collectors::Base` and keyword arguments in Ruby 2.7
15
+ - Remove null-logger development dependency
16
+
5
17
  ### 0.5.1
6
18
 
7
19
  - Fix keywords argument issue with Collectors::Base and Ruby 3.0+
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # bc-prometheus-ruby - Drop-in Prometheus metrics
2
2
 
3
- [![CircleCI](https://circleci.com/gh/bigcommerce/bc-prometheus-ruby.svg?style=svg&circle-token=fc3e2c4405a1f53a31e298f0ef981c2d0dfdee90)](https://circleci.com/gh/bigcommerce/bc-prometheus-ruby) [![Gem Version](https://badge.fury.io/rb/bc-prometheus-ruby.svg)](https://badge.fury.io/rb/bc-prometheus-ruby) [![Documentation](https://inch-ci.org/github/bigcommerce/bc-prometheus-ruby.svg?branch=main)](https://inch-ci.org/github/bigcommerce/bc-prometheus-ruby?branch=main)
3
+ [![CircleCI](https://circleci.com/gh/bigcommerce/bc-prometheus-ruby.svg?style=svg&circle-token=fc3e2c4405a1f53a31e298f0ef981c2d0dfdee90)](https://circleci.com/gh/bigcommerce/bc-prometheus-ruby) [![Gem Version](https://badge.fury.io/rb/bc-prometheus-ruby.svg)](https://badge.fury.io/rb/bc-prometheus-ruby) [![Documentation](https://inch-ci.org/github/bigcommerce/bc-prometheus-ruby.svg?branch=main)](https://inch-ci.org/github/bigcommerce/bc-prometheus-ruby?branch=main) [![Maintainability](https://api.codeclimate.com/v1/badges/4a06277c738245e8bac1/maintainability)](https://codeclimate.com/github/bigcommerce/bc-prometheus-ruby/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/4a06277c738245e8bac1/test_coverage)](https://codeclimate.com/github/bigcommerce/bc-prometheus-ruby/test_coverage)
4
4
 
5
5
  ## Installation
6
6
 
@@ -31,10 +31,9 @@ Gem::Specification.new do |spec|
31
31
 
32
32
  spec.files = Dir['README.md', 'CHANGELOG.md', 'CODE_OF_CONDUCT.md', 'lib/**/*', 'bc-prometheus-ruby.gemspec']
33
33
  spec.require_paths = ['lib']
34
- spec.required_ruby_version = '>= 2.6'
34
+ spec.required_ruby_version = '>= 3.0'
35
35
 
36
36
  spec.add_development_dependency 'bundler-audit', '>= 0.6'
37
- spec.add_development_dependency 'null-logger', '>= 0.1'
38
37
  spec.add_development_dependency 'pry', '>= 0.12'
39
38
  spec.add_development_dependency 'rake', '>= 10.0'
40
39
  spec.add_development_dependency 'rspec', '>= 3.8'
@@ -78,7 +78,7 @@ module Bigcommerce
78
78
  message = @queue.pop
79
79
  Net::HTTP.post(uri_path('/send-metrics'), message)
80
80
  rescue StandardError => e
81
- logger.warn "[bigcommerce-prometheus][#{@process_name}] Prometheus Exporter is dropping a message tp #{uri_path('/send-metrics')}: #{e}"
81
+ logger.warn "[bigcommerce-prometheus][#{@process_name}] Prometheus Exporter is dropping a message to #{uri_path('/send-metrics')}: #{e}"
82
82
  raise
83
83
  end
84
84
  end
@@ -25,7 +25,10 @@ module Bigcommerce
25
25
  ##
26
26
  # Start the collector
27
27
  #
28
- def self.start(args, &block)
28
+ # @param [Hash] args
29
+ #
30
+ def self.start(args = {}, &block)
31
+ args ||= {}
29
32
  process_collector = new(**args, &block)
30
33
 
31
34
  stop if @thread
@@ -70,6 +70,8 @@ module Bigcommerce
70
70
  ::Resque.before_first_fork do
71
71
  ::Bigcommerce::Prometheus::Integrations::Resque.start(client: Bigcommerce::Prometheus.client)
72
72
  @collectors.each(&:start)
73
+ rescue StandardError => e
74
+ logger.error "[bigcommerce-prometheus][#{@process_name}] Failed to start resque prometheus middleware after fork: #{e.message}"
73
75
  end
74
76
  end
75
77
  end
@@ -79,13 +79,15 @@ module Bigcommerce
79
79
  @app.config.after_fork_callbacks << lambda do
80
80
  ::Bigcommerce::Prometheus::Integrations::Puma.start(client: Bigcommerce::Prometheus.client)
81
81
  @collectors.each(&:start)
82
+ rescue StandardError => e
83
+ logger.error "[bigcommerce-prometheus][#{@process_name}] Failed to start web prometheus middleware after fork: #{e.message}"
82
84
  end
83
85
  end
84
86
 
85
87
  def setup_middleware
86
88
  @app.middleware.unshift(PrometheusExporter::Middleware, client: Bigcommerce::Prometheus.client)
87
89
  rescue StandardError => e
88
- logger.warn "[bc-prometheus-ruby] Failed to attach app middleware in web instrumentor: #{e.message}"
90
+ logger.warn "[bigcommerce-prometheus] Failed to attach app middleware in web instrumentor: #{e.message}"
89
91
  end
90
92
  end
91
93
  end
@@ -17,6 +17,6 @@
17
17
  #
18
18
  module Bigcommerce
19
19
  module Prometheus
20
- VERSION = '0.5.1'
20
+ VERSION = '0.6.0'
21
21
  end
22
22
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bc-prometheus-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shaun McCormick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-15 00:00:00.000000000 Z
11
+ date: 2023-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler-audit
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0.6'
27
- - !ruby/object:Gem::Dependency
28
- name: null-logger
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0.1'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0.1'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: pry
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -211,14 +197,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
211
197
  requirements:
212
198
  - - ">="
213
199
  - !ruby/object:Gem::Version
214
- version: '2.6'
200
+ version: '3.0'
215
201
  required_rubygems_version: !ruby/object:Gem::Requirement
216
202
  requirements:
217
203
  - - ">="
218
204
  - !ruby/object:Gem::Version
219
205
  version: '0'
220
206
  requirements: []
221
- rubygems_version: 3.2.3
207
+ rubygems_version: 3.4.1
222
208
  signing_key:
223
209
  specification_version: 4
224
210
  summary: Simple integration of ruby and puma servers with prometheus