Class: WprofReporter

Inherits:
Object
  • Object
show all
Includes:
Sidekiq::Worker, Wprof::Reporters::DatabaseReport, Wprof::Reporters::ExternalReport, Wprof::Reporters::FileReport
Defined in:
lib/wprof/wprof_reporter.rb

Instance Method Summary collapse

Methods included from Wprof::Reporters::ExternalReport

#generate_external_report

Methods included from Wprof::Reporters::DatabaseReport

#db_report

Methods included from Wprof::Reporters::FileReport

#generate_file_report, #make_files, #write_mix_file, #write_split_file

Instance Method Details

#logger_reportObject



31
32
33
# File 'lib/wprof/wprof_reporter.rb', line 31

def logger_report
  Rails.logger.info(@data)
end

#perform(data, rec_type) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/wprof/wprof_reporter.rb', line 7

def perform(data, rec_type)
  @data = data
  @rec_type = rec_type.to_sym
  reporter
rescue StandardError => error
  Rails.logger.warn("An error was raised when WProf tried to send data to reporter: #{error}")
end

#reporterObject



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/wprof/wprof_reporter.rb', line 15

def reporter
  reporter_type = WProf::Config.get_value(:reporter_type)
  case reporter_type
  when 'LOGGER'
    logger_report
  when 'FILE'
    generate_file_report
  when 'DATABASE'
    db_report
  when 'EXTERNAL'
    generate_external_report
  else
    logger_report
  end
end