request-log-analyzer 1.3.4 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. data/LICENSE +3 -3
  2. data/README.rdoc +1 -1
  3. data/bin/request-log-analyzer +17 -14
  4. data/lib/cli/command_line_arguments.rb +51 -51
  5. data/lib/cli/database_console.rb +3 -3
  6. data/lib/cli/database_console_init.rb +4 -3
  7. data/lib/cli/progressbar.rb +10 -10
  8. data/lib/cli/tools.rb +3 -3
  9. data/lib/request_log_analyzer/aggregator/database_inserter.rb +19 -17
  10. data/lib/request_log_analyzer/aggregator/echo.rb +14 -9
  11. data/lib/request_log_analyzer/aggregator/summarizer.rb +26 -26
  12. data/lib/request_log_analyzer/aggregator.rb +11 -15
  13. data/lib/request_log_analyzer/controller.rb +162 -89
  14. data/lib/request_log_analyzer/database/base.rb +22 -21
  15. data/lib/request_log_analyzer/database/connection.rb +3 -3
  16. data/lib/request_log_analyzer/database/request.rb +22 -0
  17. data/lib/request_log_analyzer/database/source.rb +13 -0
  18. data/lib/request_log_analyzer/database/warning.rb +14 -0
  19. data/lib/request_log_analyzer/database.rb +28 -103
  20. data/lib/request_log_analyzer/file_format/amazon_s3.rb +20 -20
  21. data/lib/request_log_analyzer/file_format/apache.rb +37 -30
  22. data/lib/request_log_analyzer/file_format/merb.rb +30 -13
  23. data/lib/request_log_analyzer/file_format/rack.rb +11 -0
  24. data/lib/request_log_analyzer/file_format/rails.rb +143 -73
  25. data/lib/request_log_analyzer/file_format/rails_development.rb +4 -49
  26. data/lib/request_log_analyzer/file_format.rb +16 -28
  27. data/lib/request_log_analyzer/filter/anonymize.rb +8 -7
  28. data/lib/request_log_analyzer/filter/field.rb +9 -9
  29. data/lib/request_log_analyzer/filter/timespan.rb +12 -10
  30. data/lib/request_log_analyzer/filter.rb +12 -16
  31. data/lib/request_log_analyzer/line_definition.rb +15 -14
  32. data/lib/request_log_analyzer/log_processor.rb +27 -29
  33. data/lib/request_log_analyzer/mailer.rb +15 -9
  34. data/lib/request_log_analyzer/output/fixed_width.rb +48 -48
  35. data/lib/request_log_analyzer/output/html.rb +20 -20
  36. data/lib/request_log_analyzer/output.rb +53 -12
  37. data/lib/request_log_analyzer/request.rb +88 -69
  38. data/lib/request_log_analyzer/source/database_loader.rb +10 -14
  39. data/lib/request_log_analyzer/source/log_parser.rb +57 -50
  40. data/lib/request_log_analyzer/source.rb +10 -12
  41. data/lib/request_log_analyzer/tracker/duration.rb +41 -134
  42. data/lib/request_log_analyzer/tracker/frequency.rb +31 -32
  43. data/lib/request_log_analyzer/tracker/hourly_spread.rb +21 -21
  44. data/lib/request_log_analyzer/tracker/timespan.rb +17 -17
  45. data/lib/request_log_analyzer/tracker/traffic.rb +106 -0
  46. data/lib/request_log_analyzer/tracker.rb +139 -32
  47. data/lib/request_log_analyzer.rb +5 -5
  48. data/request-log-analyzer.gemspec +19 -15
  49. data/spec/database.yml +6 -0
  50. data/spec/fixtures/rails_22.log +1 -1
  51. data/spec/integration/command_line_usage_spec.rb +7 -1
  52. data/spec/lib/helpers.rb +7 -7
  53. data/spec/lib/macros.rb +3 -3
  54. data/spec/lib/matchers.rb +41 -27
  55. data/spec/lib/mocks.rb +19 -15
  56. data/spec/lib/testing_format.rb +9 -9
  57. data/spec/spec_helper.rb +6 -6
  58. data/spec/unit/aggregator/database_inserter_spec.rb +16 -16
  59. data/spec/unit/aggregator/summarizer_spec.rb +4 -4
  60. data/spec/unit/controller/controller_spec.rb +2 -2
  61. data/spec/unit/controller/log_processor_spec.rb +1 -1
  62. data/spec/unit/database/base_class_spec.rb +26 -33
  63. data/spec/unit/database/connection_spec.rb +3 -3
  64. data/spec/unit/database/database_spec.rb +33 -38
  65. data/spec/unit/file_format/amazon_s3_format_spec.rb +5 -5
  66. data/spec/unit/file_format/apache_format_spec.rb +48 -11
  67. data/spec/unit/file_format/file_format_api_spec.rb +13 -13
  68. data/spec/unit/file_format/line_definition_spec.rb +24 -17
  69. data/spec/unit/file_format/merb_format_spec.rb +41 -45
  70. data/spec/unit/file_format/rails_format_spec.rb +157 -117
  71. data/spec/unit/filter/anonymize_filter_spec.rb +2 -2
  72. data/spec/unit/filter/field_filter_spec.rb +13 -13
  73. data/spec/unit/filter/filter_spec.rb +1 -1
  74. data/spec/unit/filter/timespan_filter_spec.rb +15 -15
  75. data/spec/unit/mailer_spec.rb +30 -0
  76. data/spec/unit/{source/request_spec.rb → request_spec.rb} +30 -30
  77. data/spec/unit/source/log_parser_spec.rb +27 -27
  78. data/spec/unit/tracker/duration_tracker_spec.rb +115 -78
  79. data/spec/unit/tracker/frequency_tracker_spec.rb +74 -63
  80. data/spec/unit/tracker/hourly_spread_spec.rb +28 -20
  81. data/spec/unit/tracker/timespan_tracker_spec.rb +25 -13
  82. data/spec/unit/tracker/tracker_api_spec.rb +117 -42
  83. data/spec/unit/tracker/traffic_tracker_spec.rb +107 -0
  84. data/tasks/github-gem.rake +125 -75
  85. data/tasks/request_log_analyzer.rake +2 -2
  86. metadata +19 -10
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: request-log-analyzer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.4
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Willem van Bergen
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-09-14 00:00:00 +02:00
13
+ date: 2009-09-30 00:00:00 +02:00
14
14
  default_executable: request-log-analyzer
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -33,7 +33,7 @@ dependencies:
33
33
  - !ruby/object:Gem::Version
34
34
  version: 1.1.0
35
35
  version:
36
- description: " Request log analyzer's purpose is to find ot how your web application is being used and to focus your optimization efforts.\n This tool will parse all requests in the application's log file and aggregate the information. Once it is finished parsing \n the log file(s), it will show the requests that take op most server time using various metrics. It can also insert all \n parsed request information into a database so you can roll your own analysis. It supports Rails- and Merb-based applications \n and Apache access log files out of the box, but file formats of other applications can easily be supported by supplying an \n easy to write log file format definition.\n"
36
+ description: " Request log analyzer's purpose is to find ot how your web application is being used and to focus your optimization efforts.\n This tool will parse all requests in the application's log file and aggregate the information. Once it is finished parsing\n the log file(s), it will show the requests that take op most server time using various metrics. It can also insert all\n parsed request information into a database so you can roll your own analysis. It supports Rails- and Merb-based applications\n and Apache access log files out of the box, but file formats of other applications can easily be supported by supplying an\n easy to write log file format definition.\n"
37
37
  email:
38
38
  - willem@railsdoctors.com
39
39
  - bart@railsdoctors.com
@@ -45,10 +45,10 @@ extra_rdoc_files:
45
45
  - README.rdoc
46
46
  files:
47
47
  - spec/unit/filter/anonymize_filter_spec.rb
48
+ - spec/fixtures/rails_22_cached.log
48
49
  - lib/request_log_analyzer/line_definition.rb
49
50
  - lib/request_log_analyzer/output/html.rb
50
51
  - lib/request_log_analyzer/controller.rb
51
- - spec/fixtures/rails_22_cached.log
52
52
  - spec/lib/macros.rb
53
53
  - lib/request_log_analyzer/file_format/rails_development.rb
54
54
  - spec/fixtures/apache_combined.log
@@ -61,10 +61,10 @@ files:
61
61
  - spec/integration/command_line_usage_spec.rb
62
62
  - lib/request_log_analyzer/database.rb
63
63
  - spec/fixtures/decompression.log.bz2
64
+ - spec/fixtures/rails_unordered.log
64
65
  - lib/request_log_analyzer/log_processor.rb
65
66
  - lib/request_log_analyzer/tracker.rb
66
67
  - lib/request_log_analyzer/filter.rb
67
- - spec/fixtures/rails_unordered.log
68
68
  - bin/request-log-analyzer
69
69
  - request-log-analyzer.gemspec
70
70
  - DESIGN.rdoc
@@ -83,9 +83,11 @@ files:
83
83
  - lib/request_log_analyzer/tracker/timespan.rb
84
84
  - lib/request_log_analyzer/database/base.rb
85
85
  - lib/request_log_analyzer/aggregator.rb
86
+ - spec/unit/request_spec.rb
86
87
  - lib/cli/progressbar.rb
87
88
  - lib/request_log_analyzer/mailer.rb
88
89
  - README.rdoc
90
+ - lib/request_log_analyzer/database/warning.rb
89
91
  - spec/fixtures/merb.log
90
92
  - lib/request_log_analyzer/tracker/hourly_spread.rb
91
93
  - .gitignore
@@ -93,6 +95,7 @@ files:
93
95
  - spec/unit/tracker/duration_tracker_spec.rb
94
96
  - spec/unit/file_format/amazon_s3_format_spec.rb
95
97
  - lib/request_log_analyzer/aggregator/echo.rb
98
+ - spec/unit/mailer_spec.rb
96
99
  - spec/unit/controller/log_processor_spec.rb
97
100
  - spec/spec_helper.rb
98
101
  - lib/request_log_analyzer.rb
@@ -103,8 +106,11 @@ files:
103
106
  - spec/fixtures/test_language_combined.log
104
107
  - lib/request_log_analyzer/aggregator/database_inserter.rb
105
108
  - lib/request_log_analyzer/aggregator/summarizer.rb
109
+ - lib/request_log_analyzer/file_format/rack.rb
110
+ - lib/request_log_analyzer/database/source.rb
106
111
  - lib/request_log_analyzer/file_format/rails.rb
107
112
  - spec/fixtures/decompression.tar.gz
113
+ - spec/unit/tracker/traffic_tracker_spec.rb
108
114
  - spec/unit/filter/field_filter_spec.rb
109
115
  - spec/unit/database/base_class_spec.rb
110
116
  - lib/request_log_analyzer/filter/timespan.rb
@@ -125,22 +131,23 @@ files:
125
131
  - spec/unit/controller/controller_spec.rb
126
132
  - spec/lib/mocks.rb
127
133
  - spec/lib/helpers.rb
134
+ - spec/fixtures/rails_1x.log
128
135
  - lib/cli/database_console_init.rb
129
136
  - lib/request_log_analyzer/output.rb
130
137
  - lib/request_log_analyzer/file_format/apache.rb
131
- - spec/fixtures/rails_1x.log
132
138
  - spec/fixtures/decompression.log.zip
133
- - spec/unit/source/request_spec.rb
134
139
  - spec/unit/source/log_parser_spec.rb
135
140
  - spec/fixtures/test_file_format.log
136
141
  - tasks/github-gem.rake
137
142
  - spec/unit/database/database_spec.rb
138
143
  - lib/request_log_analyzer/tracker/duration.rb
144
+ - lib/request_log_analyzer/tracker/traffic.rb
139
145
  - lib/request_log_analyzer/file_format.rb
140
146
  - spec/unit/aggregator/summarizer_spec.rb
147
+ - spec/fixtures/syslog_1x.log
141
148
  - spec/fixtures/rails_22.log
149
+ - lib/request_log_analyzer/database/request.rb
142
150
  - spec/fixtures/multiple_files_2.log
143
- - spec/fixtures/syslog_1x.log
144
151
  - LICENSE
145
152
  - lib/request_log_analyzer/source/database_loader.rb
146
153
  - spec/unit/tracker/frequency_tracker_spec.rb
@@ -178,7 +185,7 @@ rubyforge_project: r-l-a
178
185
  rubygems_version: 1.3.5
179
186
  signing_key:
180
187
  specification_version: 3
181
- summary: A command line tool to analyze request logs for Apache, Rails, Merb and other application servers
188
+ summary: A command line tool to analyze request logs for Apache, Rails, Merb and other web application servers
182
189
  test_files:
183
190
  - spec/unit/filter/anonymize_filter_spec.rb
184
191
  - spec/unit/file_format/file_format_api_spec.rb
@@ -186,11 +193,14 @@ test_files:
186
193
  - spec/integration/command_line_usage_spec.rb
187
194
  - spec/unit/filter/timespan_filter_spec.rb
188
195
  - spec/unit/aggregator/database_inserter_spec.rb
196
+ - spec/unit/request_spec.rb
189
197
  - spec/unit/tracker/tracker_api_spec.rb
190
198
  - spec/unit/tracker/duration_tracker_spec.rb
191
199
  - spec/unit/file_format/amazon_s3_format_spec.rb
200
+ - spec/unit/mailer_spec.rb
192
201
  - spec/unit/controller/log_processor_spec.rb
193
202
  - spec/unit/filter/filter_spec.rb
203
+ - spec/unit/tracker/traffic_tracker_spec.rb
194
204
  - spec/unit/filter/field_filter_spec.rb
195
205
  - spec/unit/database/base_class_spec.rb
196
206
  - spec/unit/tracker/timespan_tracker_spec.rb
@@ -199,7 +209,6 @@ test_files:
199
209
  - spec/unit/file_format/line_definition_spec.rb
200
210
  - spec/unit/database/connection_spec.rb
201
211
  - spec/unit/controller/controller_spec.rb
202
- - spec/unit/source/request_spec.rb
203
212
  - spec/unit/source/log_parser_spec.rb
204
213
  - spec/unit/database/database_spec.rb
205
214
  - spec/unit/aggregator/summarizer_spec.rb