Class: Dbwatcher::Services::Api::SummaryDataService

Inherits:
BaseApiService show all
Defined in:
lib/dbwatcher/services/api/summary_data_service.rb

Overview

Service for handling summary statistics data

Provides enhanced summary data for the sessions summary view and API endpoints with caching and comprehensive statistics.

Instance Attribute Summary

Attributes inherited from BaseApiService

#params, #session

Instance Method Summary collapse

Methods inherited from BaseApiService

#initialize

Methods inherited from BaseService

call, #initialize

Methods included from Logging

#debug_enabled?, #log_debug, #log_error, #log_info, #log_warn

Constructor Details

This class inherits a constructor from Dbwatcher::Services::Api::BaseApiService

Instance Method Details

#callObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/dbwatcher/services/api/summary_data_service.rb', line 11

def call
  start_time = Time.now
  log_service_start("Getting summary data for session #{session.id}")

  validation_error = validate_session
  return validation_error if validation_error

  begin
    result = with_cache do
      build_summary_response
    end

    log_service_completion(start_time, session_id: session.id)
    result
  rescue StandardError => e
    handle_error(e)
  end
end