Top Level Namespace
Defined Under Namespace
Modules: ApplicationHelper, CmseditHelper, DcApplicationHelper, DcInternals, DcPageConcern, DcPieceConcern, DcPolicyRuleConcern, DcSiteConcern, DcUserConcern, DrgCms, DrgcmsFormFields Classes: CmseditController, DcAd, DcAdRenderer, DcAdStat, DcApplicationController, DcBigMenu, DcBigMenuRenderer, DcBigTable, DcBigTableLocale, DcBigTableValue, DcCaptchaRenderer, DcCategory, DcCommonController, DcCommonRenderer, DcDesign, DcDummy, DcFilter, DcFolderPermission, DcIdent, DcJournal, DcKeyValueStore, DcLink, DcMainController, DcMenu, DcMenuItem, DcMenuRenderer, DcPage, DcPageRenderer, DcPart, DcPartRenderer, DcPermission, DcPiece, DcPieceRenderer, DcPolicy, DcPolicyRole, DcPolicyRule, DcPoll, DcPollItem, DcPollRenderer, DcRenderer, DcSimpleMenu, DcSimpleMenuItem, DcSimpleMenuRenderer, DcSite, DcStat, DcUser, DcUserRole, DcVisit, NewDrgFormGenerator
Instance Method Summary collapse
-
#analyze_404 ⇒ Object
Prints links which resultet in 404 error.
-
#init ⇒ Object
Init some internal vars.
-
#response_by_days ⇒ Object
Collects total number of requests and respond time for calculating average response time.
-
#selected_files ⇒ Object
Return list of selected files.
Instance Method Details
#analyze_404 ⇒ Object
Prints links which resultet in 404 error.
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/tasks/log_statistics.rb', line 43 def analyze_404 i = 0 selected_files.each do |file_name| result = [file_name[0,6], 0, 0] url = '' File.readlines(file_name).each do |line| if m = /Started(.*?)for/.match(line) url = m[1] end if m = /404/.match(line) p url.gsub('"','') end end end end |
#init ⇒ Object
Init some internal vars
16 17 18 |
# File 'lib/tasks/log_statistics.rb', line 16 def init @by_day = [] end |
#response_by_days ⇒ Object
Collects total number of requests and respond time for calculating average response time.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/tasks/log_statistics.rb', line 24 def response_by_days i = 0 selected_files.each do |file_name| result = [file_name[0,6], 0, 0] File.readlines(file_name).each do |line| next unless line.match 'Completed 200 OK in' time = $'.split('ms').first.strip.to_i result[1] += 1 result[2] += time end p result @by_day << result # break if (i+=1) > 4 end end |
#selected_files ⇒ Object
Return list of selected files.
9 10 11 |
# File 'lib/tasks/log_statistics.rb', line 9 def selected_files Dir["#{ARGV.first}*.log"] end |