Module: Datadog::Contrib::Rack::Patcher
- Defined in:
- lib/ddtrace/contrib/rack/patcher.rb
Overview
Applies multiple patches
Constant Summary collapse
- PATCHERS =
[ MiddlewarePatcher, MiddlewareNamePatcher ].freeze
Class Method Summary collapse
Class Method Details
.get_option(option) ⇒ Object
100 101 102 |
# File 'lib/ddtrace/contrib/rack/patcher.rb', line 100 def get_option(option) Datadog.configuration[:rack].get_option(option) end |
.patch ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/ddtrace/contrib/rack/patcher.rb', line 84 def patch MiddlewarePatcher.patch unless MiddlewarePatcher.patched? # Patch middleware names if !MiddlewareNamePatcher.patched? && get_option(:middleware_names) if get_option(:application) MiddlewareNamePatcher.patch else Datadog.logger.warn(%( Rack :middleware_names requires you to also pass :application. Middleware names have NOT been patched; please provide :application. e.g. use: :rack, middleware_names: true, application: my_rack_app).freeze) end end end |
.patched? ⇒ Boolean
76 77 78 |
# File 'lib/ddtrace/contrib/rack/patcher.rb', line 76 def patched? PATCHERS.all?(&:patched?) end |
.target_version ⇒ Object
80 81 82 |
# File 'lib/ddtrace/contrib/rack/patcher.rb', line 80 def target_version Integration.version end |