promenade 0.12.2 → 0.12.3
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/Gemfile.lock +1 -1
- data/bin/yjit_intergration_test +11 -0
- data/lib/promenade/version.rb +1 -1
- data/lib/promenade/yjit/stats.rb +12 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1ce2f5d337f4a1fe6de094092a79d85d228dd6b4efa0f0b690f61e0f20db747e
|
|
4
|
+
data.tar.gz: b4b552462b63b3b502206e8bf795ec42d461f97c1d078d21a8fb530f2d07fa88
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ff7629ea8b250ed7ebb2d42b0fd4eb77f8c662f2144ff7a0bd751b363b8cff662306dd2d96d581c6cce7d4e7c58f4e8a4981b9d985b09b36575d30da5dc148ff
|
|
7
|
+
data.tar.gz: 4f6ba22211d7309034f61e2f66444f9dfac8b13a0a329c83445af8ef615224ceb76fb238a4e507357f28b278b35eb5b6e9ee9e98a82599f8e3204a0b634246db
|
data/Gemfile.lock
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require "bundler/setup"
|
|
4
|
+
require "promenade"
|
|
5
|
+
require "promenade/yjit/stats"
|
|
6
|
+
require "prometheus/client"
|
|
7
|
+
require "prometheus/client/formats/text"
|
|
8
|
+
|
|
9
|
+
Promenade.setup
|
|
10
|
+
Promenade::YJIT::Stats.instrument
|
|
11
|
+
puts Prometheus::Client::Formats::Text.marshal_multiprocess
|
data/lib/promenade/version.rb
CHANGED
data/lib/promenade/yjit/stats.rb
CHANGED
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
module Promenade
|
|
2
2
|
module YJIT
|
|
3
3
|
class Stats
|
|
4
|
+
RUNTIME_STATS = %i(
|
|
5
|
+
code_region_size
|
|
6
|
+
ratio_in_yjit
|
|
7
|
+
).freeze
|
|
8
|
+
|
|
4
9
|
Promenade.gauge :ruby_yjit_code_region_size do
|
|
5
10
|
doc "Ruby YJIT code size"
|
|
6
11
|
end
|
|
7
12
|
|
|
13
|
+
Promenade.gauge :ruby_yjit_ratio_in_yjit do
|
|
14
|
+
doc "Shows the ratio of YJIT-executed instructions in %"
|
|
15
|
+
end
|
|
16
|
+
|
|
8
17
|
def self.instrument
|
|
9
18
|
return unless defined?(::RubyVM::YJIT) && ::RubyVM::YJIT.enabled?
|
|
10
19
|
|
|
11
|
-
|
|
20
|
+
::RubyVM::YJIT.runtime_stats.select { |stat, _| RUNTIME_STATS.include? stat }.each do |stat, value|
|
|
21
|
+
Promenade.metric(:"ruby_yjit_#{stat}").set({}, value)
|
|
22
|
+
end
|
|
12
23
|
end
|
|
13
24
|
end
|
|
14
25
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: promenade
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.12.
|
|
4
|
+
version: 0.12.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ed Robinson
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-02-
|
|
11
|
+
date: 2024-02-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: actionpack
|
|
@@ -283,6 +283,7 @@ files:
|
|
|
283
283
|
- bin/integration_test
|
|
284
284
|
- bin/rails
|
|
285
285
|
- bin/setup
|
|
286
|
+
- bin/yjit_intergration_test
|
|
286
287
|
- exe/promenade
|
|
287
288
|
- lib/promenade.rb
|
|
288
289
|
- lib/promenade/client/rack/exception_handler.rb
|