rails-profiler 0.31.0 → 0.31.2
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 +139 -0
- data/app/assets/builds/profiler-toolbar.js +13 -6
- data/app/assets/builds/profiler.js +53 -33
- data/app/controllers/profiler/api/ajax_controller.rb +6 -0
- data/app/controllers/profiler/api/env_vars_controller.rb +10 -0
- data/lib/profiler/allocation_counter.rb +21 -0
- data/lib/profiler/cluster/slave_proxy.rb +6 -0
- data/lib/profiler/collectors/base_collector.rb +31 -0
- data/lib/profiler/collectors/cache_collector.rb +5 -0
- data/lib/profiler/collectors/database_collector.rb +5 -0
- data/lib/profiler/collectors/exception_collector.rb +5 -0
- data/lib/profiler/collectors/flamegraph_collector.rb +5 -0
- data/lib/profiler/collectors/http_collector.rb +6 -1
- data/lib/profiler/collectors/log_collector.rb +5 -0
- data/lib/profiler/collectors/request_collector.rb +14 -11
- data/lib/profiler/collectors/view_collector.rb +5 -0
- data/lib/profiler/configuration.rb +33 -7
- data/lib/profiler/console_profiler.rb +3 -18
- data/lib/profiler/env_override_store.rb +54 -43
- data/lib/profiler/job_profiler.rb +3 -16
- data/lib/profiler/mcp/body_formatter.rb +4 -4
- data/lib/profiler/mcp/file_cache.rb +19 -7
- data/lib/profiler/mcp/resources/recent_requests.rb +2 -0
- data/lib/profiler/mcp/tools/delete_env_var.rb +3 -1
- data/lib/profiler/mcp/tools/get_profile_detail.rb +13 -1
- data/lib/profiler/mcp/tools/get_test_profile_detail.rb +1 -1
- data/lib/profiler/mcp/tools/list_env_vars.rb +3 -0
- data/lib/profiler/mcp/tools/reset_all_env_vars.rb +3 -0
- data/lib/profiler/mcp/tools/reset_env_var.rb +3 -0
- data/lib/profiler/mcp/tools/set_env_var.rb +2 -0
- data/lib/profiler/middleware/capturing_body.rb +112 -0
- data/lib/profiler/middleware/profiler_middleware.rb +261 -53
- data/lib/profiler/middleware/streamed_profile.rb +135 -0
- data/lib/profiler/middleware/toolbar_injector.rb +3 -10
- data/lib/profiler/models/profile.rb +69 -5
- data/lib/profiler/redaction.rb +10 -0
- data/lib/profiler/storage/base_store.rb +5 -1
- data/lib/profiler/storage/blob_store.rb +28 -4
- data/lib/profiler/storage/file_store.rb +21 -15
- data/lib/profiler/storage/memory_store.rb +6 -0
- data/lib/profiler/storage/private_files.rb +135 -0
- data/lib/profiler/storage/redis_store.rb +6 -0
- data/lib/profiler/storage/sqlite_store.rb +26 -8
- data/lib/profiler/storage/token.rb +24 -0
- data/lib/profiler/test_profiler.rb +3 -18
- data/lib/profiler/version.rb +1 -1
- data/lib/profiler.rb +12 -0
- metadata +10 -5
data/lib/profiler.rb
CHANGED
|
@@ -5,6 +5,7 @@ require_relative "profiler/boot_env"
|
|
|
5
5
|
require_relative "profiler/version"
|
|
6
6
|
require_relative "profiler/configuration"
|
|
7
7
|
require_relative "profiler/redaction"
|
|
8
|
+
require_relative "profiler/allocation_counter"
|
|
8
9
|
|
|
9
10
|
module Profiler
|
|
10
11
|
class Error < StandardError; end
|
|
@@ -28,6 +29,15 @@ module Profiler
|
|
|
28
29
|
@storage ||= configuration.storage_backend
|
|
29
30
|
end
|
|
30
31
|
|
|
32
|
+
# Saves a profile from a path of the application (a job, a console command, a test, an
|
|
33
|
+
# outbound HTTP call): a storage error loses the profile, never the application's work.
|
|
34
|
+
def save_profile(profile, from:)
|
|
35
|
+
storage.save(profile.token, profile)
|
|
36
|
+
rescue StandardError => e
|
|
37
|
+
warn "[Profiler] #{from}: could not save profile #{profile.token}: #{e.class}: #{e.message}"
|
|
38
|
+
nil
|
|
39
|
+
end
|
|
40
|
+
|
|
31
41
|
def env_override_store
|
|
32
42
|
@env_override_store ||= EnvOverrideStore.new
|
|
33
43
|
end
|
|
@@ -124,6 +134,8 @@ require_relative "profiler/collectors/i18n_collector"
|
|
|
124
134
|
require_relative "profiler/collectors/env_collector"
|
|
125
135
|
require_relative "profiler/collectors/mailer_collector"
|
|
126
136
|
|
|
137
|
+
require_relative "profiler/storage/token"
|
|
138
|
+
require_relative "profiler/storage/private_files"
|
|
127
139
|
require_relative "profiler/env_override_store"
|
|
128
140
|
require_relative "profiler/instrumentation/thread_context_propagation"
|
|
129
141
|
require_relative "profiler/sse/event_bus"
|
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.31.
|
|
4
|
+
version: 0.31.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sébastien Duplessy
|
|
@@ -133,6 +133,7 @@ files:
|
|
|
133
133
|
- config/routes.rb
|
|
134
134
|
- exe/profiler-mcp
|
|
135
135
|
- lib/profiler.rb
|
|
136
|
+
- lib/profiler/allocation_counter.rb
|
|
136
137
|
- lib/profiler/boot_env.rb
|
|
137
138
|
- lib/profiler/cluster/master_client.rb
|
|
138
139
|
- lib/profiler/cluster/security.rb
|
|
@@ -206,8 +207,10 @@ files:
|
|
|
206
207
|
- lib/profiler/mcp/tools/reset_env_var.rb
|
|
207
208
|
- lib/profiler/mcp/tools/run_tests.rb
|
|
208
209
|
- lib/profiler/mcp/tools/set_env_var.rb
|
|
210
|
+
- lib/profiler/middleware/capturing_body.rb
|
|
209
211
|
- lib/profiler/middleware/cors_middleware.rb
|
|
210
212
|
- lib/profiler/middleware/profiler_middleware.rb
|
|
213
|
+
- lib/profiler/middleware/streamed_profile.rb
|
|
211
214
|
- lib/profiler/middleware/toolbar_injector.rb
|
|
212
215
|
- lib/profiler/models/profile.rb
|
|
213
216
|
- lib/profiler/models/sql_query.rb
|
|
@@ -222,8 +225,10 @@ files:
|
|
|
222
225
|
- lib/profiler/storage/blob_store.rb
|
|
223
226
|
- lib/profiler/storage/file_store.rb
|
|
224
227
|
- lib/profiler/storage/memory_store.rb
|
|
228
|
+
- lib/profiler/storage/private_files.rb
|
|
225
229
|
- lib/profiler/storage/redis_store.rb
|
|
226
230
|
- lib/profiler/storage/sqlite_store.rb
|
|
231
|
+
- lib/profiler/storage/token.rb
|
|
227
232
|
- lib/profiler/tasks/profiler.rake
|
|
228
233
|
- lib/profiler/test_helpers/minitest_support.rb
|
|
229
234
|
- lib/profiler/test_helpers/reporter.rb
|
|
@@ -233,13 +238,13 @@ files:
|
|
|
233
238
|
- lib/profiler/test_runner/run_store.rb
|
|
234
239
|
- lib/profiler/test_runner/runner.rb
|
|
235
240
|
- lib/profiler/version.rb
|
|
236
|
-
homepage: https://
|
|
241
|
+
homepage: https://github.com/Pepsit36/rails-profiler
|
|
237
242
|
licenses:
|
|
238
243
|
- MIT
|
|
239
244
|
metadata:
|
|
240
|
-
homepage_uri: https://
|
|
241
|
-
source_code_uri: https://
|
|
242
|
-
changelog_uri: https://
|
|
245
|
+
homepage_uri: https://github.com/Pepsit36/rails-profiler
|
|
246
|
+
source_code_uri: https://github.com/Pepsit36/rails-profiler
|
|
247
|
+
changelog_uri: https://github.com/Pepsit36/rails-profiler/blob/master/CHANGELOG.md
|
|
243
248
|
post_install_message:
|
|
244
249
|
rdoc_options: []
|
|
245
250
|
require_paths:
|