Class: SoldierOfCode::DejaVu::Analysis

Inherits:
Object
  • Object
show all
Defined in:
lib/deja-vu/analyzer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeAnalysis

Returns a new instance of Analysis.



91
92
93
94
95
96
97
98
99
100
# File 'lib/deja-vu/analyzer.rb', line 91

def initialize
  @number_of_requests = 0
  @number_of_errors = 0
  @success_percentile = 1
  @analysis_title = "Untitled"
  @avg_response_time = 0.0
  @number_of_unique_requests = 0
  @number_of_unique_users = 0
  @total_request_time = 0
end

Instance Attribute Details

#analysis_titleObject

Returns the value of attribute analysis_title.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def analysis_title
  @analysis_title
end

#avg_response_timeObject

Returns the value of attribute avg_response_time.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def avg_response_time
  @avg_response_time
end

#number_of_errorsObject

Returns the value of attribute number_of_errors.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def number_of_errors
  @number_of_errors
end

#number_of_requestsObject

Returns the value of attribute number_of_requests.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def number_of_requests
  @number_of_requests
end

#number_of_unique_requestsObject

Returns the value of attribute number_of_unique_requests.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def number_of_unique_requests
  @number_of_unique_requests
end

#number_of_unique_usersObject

Returns the value of attribute number_of_unique_users.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def number_of_unique_users
  @number_of_unique_users
end

#success_percentileObject

Returns the value of attribute success_percentile.



89
90
91
# File 'lib/deja-vu/analyzer.rb', line 89

def success_percentile
  @success_percentile
end

Instance Method Details

#add_errorObject



118
119
120
121
# File 'lib/deja-vu/analyzer.rb', line 118

def add_error
  @number_of_errors += 1
  recalculate_succes_error_percentile
end

#add_request(rep_time) ⇒ Object



102
103
104
105
106
107
108
# File 'lib/deja-vu/analyzer.rb', line 102

def add_request(rep_time)
  @number_of_requests += 1
  recalculate_succes_error_percentile
  @total_request_time += rep_time
  puts "#{__FILE__}:#{__LINE__} #{__method__} #{rep_time}"
  recalculate_avg_resp_time
end

#add_uniqueObject



110
111
112
# File 'lib/deja-vu/analyzer.rb', line 110

def add_unique
  @number_of_unique_requests += 1
end

#add_userObject



114
115
116
# File 'lib/deja-vu/analyzer.rb', line 114

def add_user
  @number_of_unique_users += 1
end

#recalculate_avg_resp_timeObject



123
124
125
# File 'lib/deja-vu/analyzer.rb', line 123

def recalculate_avg_resp_time
  @avg_response_time = @total_request_time / @number_of_requests
end

#recalculate_succes_error_percentileObject



127
128
129
130
# File 'lib/deja-vu/analyzer.rb', line 127

def recalculate_succes_error_percentile
  @success_percentile = ((@number_of_requests - @number_of_errors) / @number_of_requests) * 100 if @number_of_requests > 0
  @success_percentile = 100 if @number_of_requests == 0
end