rails-profiler 0.41.0 → 0.43.0
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/CHANGELOG.md +27 -0
- data/app/assets/builds/profiler.js +13 -12
- data/app/controllers/profiler/api/compare_controller.rb +42 -0
- data/app/controllers/profiler/application_controller.rb +9 -0
- data/app/controllers/profiler/compare_controller.rb +14 -0
- data/app/views/profiler/compare/show.html.erb +6 -0
- data/config/routes.rb +5 -0
- data/lib/profiler/alerts/sql_redaction.rb +41 -0
- data/lib/profiler/alerts/webhook.rb +62 -0
- data/lib/profiler/alerts/worker.rb +84 -0
- data/lib/profiler/alerts.rb +199 -0
- data/lib/profiler/configuration.rb +36 -1
- data/lib/profiler/mcp/server.rb +15 -0
- data/lib/profiler/mcp/tools/compare_profiles.rb +158 -0
- data/lib/profiler/peers/peer_proxy.rb +83 -0
- data/lib/profiler/peers.rb +142 -0
- data/lib/profiler/profile_comparison.rb +44 -0
- data/lib/profiler/profile_diff.rb +253 -0
- data/lib/profiler/railtie.rb +2 -0
- data/lib/profiler/version.rb +1 -1
- data/lib/profiler.rb +6 -0
- metadata +13 -1
data/lib/profiler/version.rb
CHANGED
data/lib/profiler.rb
CHANGED
|
@@ -54,6 +54,7 @@ module Profiler
|
|
|
54
54
|
return false if target.is_a?(Storage::Unavailable)
|
|
55
55
|
|
|
56
56
|
target.save(profile.token, profile)
|
|
57
|
+
Alerts.check(profile)
|
|
57
58
|
true
|
|
58
59
|
rescue StandardError => e
|
|
59
60
|
log_error("#{from}: could not save profile #{profile.token}", e)
|
|
@@ -274,7 +275,12 @@ require_relative "profiler/storage/token"
|
|
|
274
275
|
require_relative "profiler/storage/private_files"
|
|
275
276
|
require_relative "profiler/storage/unavailable"
|
|
276
277
|
require_relative "profiler/assets"
|
|
278
|
+
require_relative "profiler/alerts"
|
|
277
279
|
require_relative "profiler/ajax_data"
|
|
280
|
+
require_relative "profiler/peers"
|
|
281
|
+
require_relative "profiler/peers/peer_proxy"
|
|
282
|
+
require_relative "profiler/profile_diff"
|
|
283
|
+
require_relative "profiler/profile_comparison"
|
|
278
284
|
require_relative "profiler/env_override_store"
|
|
279
285
|
require_relative "profiler/instrumentation/thread_context_propagation"
|
|
280
286
|
require_relative "profiler/instrumentation/executor_context_propagation"
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rails-profiler
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.43.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sébastien Duplessy
|
|
@@ -119,6 +119,7 @@ files:
|
|
|
119
119
|
- app/assets/javascript/profiler-ajax-interceptor.js
|
|
120
120
|
- app/controllers/profiler/api/ajax_controller.rb
|
|
121
121
|
- app/controllers/profiler/api/cluster_controller.rb
|
|
122
|
+
- app/controllers/profiler/api/compare_controller.rb
|
|
122
123
|
- app/controllers/profiler/api/config_controller.rb
|
|
123
124
|
- app/controllers/profiler/api/console_controller.rb
|
|
124
125
|
- app/controllers/profiler/api/env_vars_controller.rb
|
|
@@ -134,11 +135,13 @@ files:
|
|
|
134
135
|
- app/controllers/profiler/api/toolbar_controller.rb
|
|
135
136
|
- app/controllers/profiler/application_controller.rb
|
|
136
137
|
- app/controllers/profiler/assets_controller.rb
|
|
138
|
+
- app/controllers/profiler/compare_controller.rb
|
|
137
139
|
- app/controllers/profiler/health_controller.rb
|
|
138
140
|
- app/controllers/profiler/profiles_controller.rb
|
|
139
141
|
- app/controllers/profiler/test_runner_controller.rb
|
|
140
142
|
- app/views/layouts/profiler/application.html.erb
|
|
141
143
|
- app/views/layouts/profiler/embedded.html.erb
|
|
144
|
+
- app/views/profiler/compare/show.html.erb
|
|
142
145
|
- app/views/profiler/health/show.html.erb
|
|
143
146
|
- app/views/profiler/profiles/index.html.erb
|
|
144
147
|
- app/views/profiler/profiles/show.html.erb
|
|
@@ -147,6 +150,10 @@ files:
|
|
|
147
150
|
- exe/profiler-mcp
|
|
148
151
|
- lib/profiler.rb
|
|
149
152
|
- lib/profiler/ajax_data.rb
|
|
153
|
+
- lib/profiler/alerts.rb
|
|
154
|
+
- lib/profiler/alerts/sql_redaction.rb
|
|
155
|
+
- lib/profiler/alerts/webhook.rb
|
|
156
|
+
- lib/profiler/alerts/worker.rb
|
|
150
157
|
- lib/profiler/allocation_counter.rb
|
|
151
158
|
- lib/profiler/assets.rb
|
|
152
159
|
- lib/profiler/body_content.rb
|
|
@@ -209,6 +216,7 @@ files:
|
|
|
209
216
|
- lib/profiler/mcp/slave_support.rb
|
|
210
217
|
- lib/profiler/mcp/tools/analyze_queries.rb
|
|
211
218
|
- lib/profiler/mcp/tools/clear_profiles.rb
|
|
219
|
+
- lib/profiler/mcp/tools/compare_profiles.rb
|
|
212
220
|
- lib/profiler/mcp/tools/delete_env_var.rb
|
|
213
221
|
- lib/profiler/mcp/tools/explain_query.rb
|
|
214
222
|
- lib/profiler/mcp/tools/get_profile_ajax.rb
|
|
@@ -240,7 +248,11 @@ files:
|
|
|
240
248
|
- lib/profiler/otel/scoped_id_generator.rb
|
|
241
249
|
- lib/profiler/otel/sdk.rb
|
|
242
250
|
- lib/profiler/otel/trace_exporter.rb
|
|
251
|
+
- lib/profiler/peers.rb
|
|
252
|
+
- lib/profiler/peers/peer_proxy.rb
|
|
243
253
|
- lib/profiler/process_snapshot.rb
|
|
254
|
+
- lib/profiler/profile_comparison.rb
|
|
255
|
+
- lib/profiler/profile_diff.rb
|
|
244
256
|
- lib/profiler/railtie.rb
|
|
245
257
|
- lib/profiler/redaction.rb
|
|
246
258
|
- lib/profiler/sql_statement.rb
|