class GenProf
Public Class Methods
new(event, rec_type)
click to toggle source
# File lib/wprof/gen_prof.rb, line 4 def initialize(event, rec_type) @event = event @db_runtime = WProf::Config.get_value(:db_runtime) @async_report = WProf::Config.get_value(:async) @rec_type = rec_type generate_profiling end
Public Instance Methods
generate_profiling()
click to toggle source
# File lib/wprof/gen_prof.rb, line 12 def generate_profiling generate_common_params generate_custom_params deploy_reporter end
Private Instance Methods
app_params()
click to toggle source
# File lib/wprof/gen_prof.rb, line 40 def app_params for_app_only = { code: @event.payload[:status], controller: @event.payload[:controller], url: @event.payload[:path] } for_app_only[:db_runtime] = format_time(@event.payload[:db_runtime]) if @db_runtime @params.merge!(for_app_only) end
custom_params()
click to toggle source
# File lib/wprof/gen_prof.rb, line 59 def custom_params for_customs_only = { method: @event.payload[:method] } @params.merge!(for_customs_only) end
deploy_reporter()
click to toggle source
# File lib/wprof/gen_prof.rb, line 66 def deploy_reporter if @async_report WprofReporter.perform_async(@params, @rec_type) else WprofReporter.new.perform(@params, @rec_type) end end
generate_common_params()
click to toggle source
# File lib/wprof/gen_prof.rb, line 20 def generate_common_params @params = { transaction_id: @event.transaction_id, total_time: format_time(@event.duration), start_dt: @event.time, end_dt: @event.end } end
generate_custom_params()
click to toggle source
# File lib/wprof/gen_prof.rb, line 29 def generate_custom_params case @rec_type when :standard app_params when :service service_params when :custom custom_params end end
service_params()
click to toggle source
# File lib/wprof/gen_prof.rb, line 50 def service_params for_service_only = { code: @event.payload[:status], service_hostname: @event.payload[:service_hostname], request_uri: @event.payload[:request_uri] } @params.merge!(for_service_only) end