Class: RequestLogAnalyzer::FileFormat::AmazonS3::Request
- Defined in:
- lib/request_log_analyzer/file_format/amazon_s3.rb
Constant Summary collapse
- MONTHS =
{'Jan' => '01', 'Feb' => '02', 'Mar' => '03', 'Apr' => '04', 'May' => '05', 'Jun' => '06', 'Jul' => '07', 'Aug' => '08', 'Sep' => '09', 'Oct' => '10', 'Nov' => '11', 'Dec' => '12' }
Instance Attribute Summary
Attributes inherited from Request
#attributes, #file_format, #lines
Instance Method Summary collapse
-
#convert_nillable_string(value, definition) ⇒ Object
Make sure that the string ‘-’ is parsed as a nil value.
-
#convert_referer(value, definition) ⇒ Object
Can be implemented in subclasses for improved categorizations.
-
#convert_timestamp(value, definition) ⇒ Object
Do not use DateTime.parse, but parse the timestamp ourselves to return a integer to speed up parsing.
-
#convert_user_agent(value, definition) ⇒ Object
Can be implemented in subclasses for improved categorizations.
Methods inherited from Request
#<<, #add_line_hash, #add_parsed_line, #completed?, create, #empty?, #every, #first, #first_lineno, #has_line_type?, #initialize, #last_lineno, #timestamp, #validate
Methods included from Request::Converters
#convert_decimal, #convert_duration, #convert_eval, #convert_float, #convert_int, #convert_integer, #convert_string, #convert_sym, #convert_symbol, #convert_traffic, #convert_value
Constructor Details
This class inherits a constructor from RequestLogAnalyzer::Request
Instance Method Details
#convert_nillable_string(value, definition) ⇒ Object
Make sure that the string ‘-’ is parsed as a nil value.
55 56 57 |
# File 'lib/request_log_analyzer/file_format/amazon_s3.rb', line 55 def convert_nillable_string(value, definition) value == '-' ? nil : value end |
#convert_referer(value, definition) ⇒ Object
Can be implemented in subclasses for improved categorizations
60 61 62 |
# File 'lib/request_log_analyzer/file_format/amazon_s3.rb', line 60 def convert_referer(value, definition) value == '-' ? nil : value end |
#convert_timestamp(value, definition) ⇒ Object
Do not use DateTime.parse, but parse the timestamp ourselves to return a integer to speed up parsing.
50 51 52 |
# File 'lib/request_log_analyzer/file_format/amazon_s3.rb', line 50 def (value, definition) "#{value[7,4]}#{MONTHS[value[3,3]]}#{value[0,2]}#{value[12,2]}#{value[15,2]}#{value[18,2]}".to_i end |
#convert_user_agent(value, definition) ⇒ Object
Can be implemented in subclasses for improved categorizations
65 66 67 |
# File 'lib/request_log_analyzer/file_format/amazon_s3.rb', line 65 def convert_user_agent(value, definition) value == '-' ? nil : value end |