prometheus-client-mmap 0.25.0-x86_64-darwin → 0.26.0-x86_64-darwin
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 +4 -4
- data/README.md +13 -6
- data/lib/3.1/fast_mmaped_file.bundle +0 -0
- data/lib/3.2/fast_mmaped_file.bundle +0 -0
- data/lib/prometheus/client/configuration.rb +1 -1
- data/lib/prometheus/client/formats/text.rb +1 -1
- data/lib/prometheus/client/helper/mmaped_file.rb +1 -1
- data/lib/prometheus/client/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f779bcb82f005c123a3e3d157cb670ff919282fdd7ef9063067d39b275603ef6
|
4
|
+
data.tar.gz: 965803881aeb4cf51d3b58dc9e04809d1be8e6cb04469681c4468ef8c8dc9f71
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8263efb8e95eeb872870350c60d4dc96392edff1d44e42270ae4f38ad82916e2c05f8aeb8c022210cd9dd3a480093f4dc5f089e208ac7eaeaf4df5060e35db35
|
7
|
+
data.tar.gz: bf7b153d56928526a968e87cc2acc14d45e860052a8db91f776ccb334f159b7e27808468f9e5cee76b6ba74f5be9529206fbb9a60fbb3ecffe1c05b9ccd8309b
|
data/README.md
CHANGED
@@ -34,7 +34,7 @@ http_requests = prometheus.counter(:http_requests, 'A counter of HTTP requests m
|
|
34
34
|
http_requests.increment
|
35
35
|
```
|
36
36
|
|
37
|
-
## Rust extension
|
37
|
+
## Rust extension
|
38
38
|
|
39
39
|
In an effort to improve maintainability, there is now an optional Rust
|
40
40
|
implementation that reads the metric files and outputs the multiprocess
|
@@ -202,14 +202,21 @@ prometheus_multiproc_dir=/tmp
|
|
202
202
|
|
203
203
|
### Multiprocess metrics via Rust extension
|
204
204
|
|
205
|
-
|
206
|
-
|
207
|
-
|
205
|
+
By default, the Rust extension will be used to read and write multiprocess
|
206
|
+
metrics if the `fast_mmaped_file_rs` extension is available. This should
|
207
|
+
be significantly faster than the C extension.
|
208
|
+
|
209
|
+
If the environment variable `prometheus_rust_multiprocess_metrics=false`
|
210
|
+
is set or if the `rust_multiprocess_metrics` configuration setting is
|
211
|
+
`false` , the C extension will be used.
|
208
212
|
|
209
213
|
### Read and write metrics via Rust extension
|
210
214
|
|
211
|
-
|
212
|
-
|
215
|
+
By default, the Rust extension will be used to read and write metrics
|
216
|
+
from the mmaped file if the `fast_mmaped_file_rs` extension is available.
|
217
|
+
|
218
|
+
To use the C extension, set the environment variable
|
219
|
+
`prometheus_rust_mmaped_file=false`.
|
213
220
|
|
214
221
|
## Pitfalls
|
215
222
|
|
Binary file
|
Binary file
|
@@ -14,7 +14,7 @@ module Prometheus
|
|
14
14
|
@initial_mmap_file_size = ::Prometheus::Client::PageSize.page_size(fallback_page_size: 4096)
|
15
15
|
@logger = Logger.new($stdout)
|
16
16
|
@pid_provider = Process.method(:pid)
|
17
|
-
@rust_multiprocess_metrics = ENV.fetch('prometheus_rust_multiprocess_metrics',
|
17
|
+
@rust_multiprocess_metrics = ENV.fetch('prometheus_rust_multiprocess_metrics', 'true') == 'true'
|
18
18
|
@multiprocess_files_dir = ENV.fetch('prometheus_multiproc_dir') do
|
19
19
|
Dir.mktmpdir("prometheus-mmap")
|
20
20
|
end
|
@@ -27,7 +27,7 @@ module Prometheus
|
|
27
27
|
Helper::MetricsRepresentation.to_text(metrics)
|
28
28
|
end
|
29
29
|
|
30
|
-
def marshal_multiprocess(path = Prometheus::Client.configuration.multiprocess_files_dir, use_rust:
|
30
|
+
def marshal_multiprocess(path = Prometheus::Client.configuration.multiprocess_files_dir, use_rust: true)
|
31
31
|
file_list = Dir.glob(File.join(path, '*.db')).sort
|
32
32
|
.map {|f| Helper::PlainFile.new(f) }
|
33
33
|
.map {|f| [f.filepath, f.multiprocess_mode.to_sym, f.type.to_sym, f.pid] }
|
@@ -14,7 +14,7 @@ module Prometheus
|
|
14
14
|
module Client
|
15
15
|
module Helper
|
16
16
|
# We can't check `Prometheus::Client.configuration` as this creates a circular dependency
|
17
|
-
if (ENV.fetch('prometheus_rust_mmaped_file',
|
17
|
+
if (ENV.fetch('prometheus_rust_mmaped_file', 'true') == "true" &&
|
18
18
|
Prometheus::Client::Helper::Loader.rust_impl_available?)
|
19
19
|
class MmapedFile < FastMmapedFileRs
|
20
20
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prometheus-client-mmap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.26.0
|
5
5
|
platform: x86_64-darwin
|
6
6
|
authors:
|
7
7
|
- Tobias Schmidt
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2023-06-
|
14
|
+
date: 2023-06-20 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rb_sys
|