Class: RailsErrorDashboard::Queries::UserImpactSummary
- Inherits:
-
Object
- Object
- RailsErrorDashboard::Queries::UserImpactSummary
- Defined in:
- lib/rails_error_dashboard/queries/user_impact_summary.rb
Overview
Query: Rank errors by unique user impact — how many distinct users each error type affects. Surfaces “this error affected 847 unique users” prominently. An error hitting 1 user 1000 times is different from an error hitting 1000 users once.
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(days = 30, application_id: nil) ⇒ UserImpactSummary
constructor
A new instance of UserImpactSummary.
Constructor Details
#initialize(days = 30, application_id: nil) ⇒ UserImpactSummary
Returns a new instance of UserImpactSummary.
13 14 15 16 17 |
# File 'lib/rails_error_dashboard/queries/user_impact_summary.rb', line 13 def initialize(days = 30, application_id: nil) @days = days @application_id = application_id @start_date = days.days.ago end |
Class Method Details
.call(days = 30, application_id: nil) ⇒ Object
9 10 11 |
# File 'lib/rails_error_dashboard/queries/user_impact_summary.rb', line 9 def self.call(days = 30, application_id: nil) new(days, application_id: application_id).call end |
Instance Method Details
#call ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/rails_error_dashboard/queries/user_impact_summary.rb', line 19 def call all_entries = build_entries { entries: all_entries, summary: build_summary(all_entries) } rescue => e Rails.logger.error("[RailsErrorDashboard] UserImpactSummary failed: #{e.class}: #{e.}") empty_result end |