prometheus-client 4.2.3 → 4.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b613ee573cfdb45f463ec2456e9f1f6d4c0e6f67c6b205212f14ed0dc4dbb06e
4
- data.tar.gz: bcfc09e32ffed628167006fa15982ec389a77236b828ffa4def2f5bc97ac2999
3
+ metadata.gz: caf799f0812d86692c1bffadf545075cf5d7fd84b6016e2a5a6ca9658a9e7c82
4
+ data.tar.gz: 90ed16b1cfc49d43ec365cf5b28b389f4f33f278884638436d1c7673fdc564fb
5
5
  SHA512:
6
- metadata.gz: 419d18f1f7b514430b1b06271e450c44062d37b84793d1c329ee19601ba8f7b6a392903ab04f7a08ea4ae400d4709e4c6eef99ba2637650a7cbbf7f4a0126d27
7
- data.tar.gz: abad7e30a864b5bc327ed2b37c3552140b43a46064cbd6292bec092343b2c9609c842cd87e194744d6f3a7012e2c792ec1d6488b10c7a1f603dbcc517e018f3e
6
+ metadata.gz: c5ac30c94703ad68e7f4bd9c62b2e7e873dfdc9fdf965fa40d9f459cc389203ee1673b6a38256baebedc779d4b5776a01e17ec5e19fda5f0246a1a46286ca18c
7
+ data.tar.gz: 32efbccac72367c4176a40289d2a4ef8aa3c7870aceac05ae3936a0a013ac753425042f5844f990941bf7d4d68552eb68f1ffa340e22d1ddf61e5bb2945a26c5
@@ -67,7 +67,7 @@ module Prometheus
67
67
  # https://prometheus.io/docs/practices/histograms/#count-and-sum-of-observations
68
68
  # for details.
69
69
  def observe(value, labels: {})
70
- bucket = buckets.find {|upper_limit| upper_limit >= value }
70
+ bucket = buckets.bsearch { |upper_limit| upper_limit >= value }
71
71
  bucket = "+Inf" if bucket.nil?
72
72
 
73
73
  base_label_set = label_set_for(labels)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Prometheus
4
4
  module Client
5
- VERSION = '4.2.3'
5
+ VERSION = '4.2.5'
6
6
  end
7
7
  end
@@ -1,6 +1,5 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require 'benchmark'
4
3
  require 'prometheus/client'
5
4
 
6
5
  module Prometheus
@@ -34,6 +33,12 @@ module Prometheus
34
33
 
35
34
  protected
36
35
 
36
+ def realtime
37
+ start_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
38
+ yield
39
+ Process.clock_gettime(Process::CLOCK_MONOTONIC) - start_time
40
+ end
41
+
37
42
  def init_request_metrics
38
43
  @requests = @registry.counter(
39
44
  :"#{@metrics_prefix}_requests_total",
@@ -58,7 +63,7 @@ module Prometheus
58
63
 
59
64
  def trace(env)
60
65
  response = nil
61
- duration = Benchmark.realtime { response = yield }
66
+ duration = realtime { response = yield }
62
67
  record(env, response.first.to_s, duration)
63
68
  return response
64
69
  rescue => exception
metadata CHANGED
@@ -1,16 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prometheus-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.3
4
+ version: 4.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Kochie
8
8
  - Chris Sinjakli
9
9
  - Daniel Magliola
10
- autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2024-06-28 00:00:00.000000000 Z
12
+ date: 2025-07-05 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: base64
@@ -26,6 +25,20 @@ dependencies:
26
25
  - - ">="
27
26
  - !ruby/object:Gem::Version
28
27
  version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: benchmark
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
29
42
  - !ruby/object:Gem::Dependency
30
43
  name: benchmark-ips
31
44
  requirement: !ruby/object:Gem::Requirement
@@ -68,7 +81,6 @@ dependencies:
68
81
  - - ">="
69
82
  - !ruby/object:Gem::Version
70
83
  version: '0'
71
- description:
72
84
  email:
73
85
  - superq@gmail.com
74
86
  - chris@sinjakli.co.uk
@@ -102,7 +114,6 @@ homepage: https://github.com/prometheus/client_ruby
102
114
  licenses:
103
115
  - Apache-2.0
104
116
  metadata: {}
105
- post_install_message:
106
117
  rdoc_options: []
107
118
  require_paths:
108
119
  - lib
@@ -117,8 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
117
128
  - !ruby/object:Gem::Version
118
129
  version: '0'
119
130
  requirements: []
120
- rubygems_version: 3.5.11
121
- signing_key:
131
+ rubygems_version: 3.6.2
122
132
  specification_version: 4
123
133
  summary: A suite of instrumentation metric primitivesthat can be exposed through a
124
134
  web services interface.