Class: PostHog::Rails::Railtie
- Inherits:
-
Rails::Railtie
- Object
- Rails::Railtie
- PostHog::Rails::Railtie
- Defined in:
- lib/posthog/rails/railtie.rb
Class Method Summary collapse
Instance Method Summary collapse
- #insert_middleware_after(app, target, middleware) ⇒ Object
- #insert_middleware_before(app, target, middleware) ⇒ Object
Class Method Details
.rails_version_above_7? ⇒ Boolean
145 146 147 |
# File 'lib/posthog/rails/railtie.rb', line 145 def self.rails_version_above_7? ::Rails.version.to_f >= 7.0 end |
.register_error_subscriber ⇒ Object
135 136 137 138 139 140 141 142 143 |
# File 'lib/posthog/rails/railtie.rb', line 135 def self.register_error_subscriber return unless PostHog::Rails.config&.auto_capture_exceptions subscriber = PostHog::Rails::ErrorSubscriber.new ::Rails.error.subscribe(subscriber) rescue StandardError => e PostHog::Logging.logger.warn("Failed to register error subscriber: #{e.}") PostHog::Logging.logger.warn("Backtrace: #{e.backtrace&.first(5)&.join("\n")}") end |
Instance Method Details
#insert_middleware_after(app, target, middleware) ⇒ Object
121 122 123 124 125 126 |
# File 'lib/posthog/rails/railtie.rb', line 121 def insert_middleware_after(app, target, middleware) # During initialization, app.config.middleware is a MiddlewareStackProxy # which only supports recording operations (insert_after, use, etc.) # and does NOT support query methods like include?. app.config.middleware.insert_after(target, middleware) end |
#insert_middleware_before(app, target, middleware) ⇒ Object
128 129 130 131 132 133 |
# File 'lib/posthog/rails/railtie.rb', line 128 def insert_middleware_before(app, target, middleware) # During initialization, app.config.middleware is a MiddlewareStackProxy # which only supports recording operations (insert_before, use, etc.) # and does NOT support query methods like include?. app.config.middleware.insert_before(target, middleware) end |