promenade 0.12.2 → 0.12.3
Sign up to get free protection for your applications and to get access to all the features.
- 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
|