Session-based processing method and system
First Claim
1. A method for grouping log file entries by session, comprising:
- storing a log file of entries in a memory, each of said entries identifying a client request to a server;
retrieving a subset of log file entries from the memory for storage in a ring buffer;
processing each entry in the ring buffer to identify entries in the subset of log file entries that belong to a complete client session by allocating, for each identified client session, an index to identify entries in the ring buffer that are associated with the identified client session and to identify start or end entries;
grouping entries in the subset that belong to a complete client session; and
adding and removing log file entries to the ring buffer so that the ring buffer implements a sliding window to process the log file entries in the memory into complete client sessions.
2 Assignments
0 Petitions
Accused Products
Abstract
A log file processing system sorts records from large log files and groups them by session without making a complete copy of the log files by capturing a subset of the log files in a sliding memory window and identifying all records in the window that form a complete user session. Records belonging to a complete session are output for analyzing, and the remaining records are output as raw log data for additional processing. Using a ring buffer to implement the sliding memory window, data structures are used to group records by session, to identify completed sessions, and to index into the ring buffer to retrieve records for completed sessions that are to be directly analyzed. Any records remaining in the ring buffer at the end of slide window processing may be output as raw log file data and are processed as incomplete or malformed session records. An embodiment of the log file processing system provides a significant improvement on the speed of data extraction from log files into analyzable session data.
75 Citations
19 Claims
-
1. A method for grouping log file entries by session, comprising:
-
storing a log file of entries in a memory, each of said entries identifying a client request to a server; retrieving a subset of log file entries from the memory for storage in a ring buffer; processing each entry in the ring buffer to identify entries in the subset of log file entries that belong to a complete client session by allocating, for each identified client session, an index to identify entries in the ring buffer that are associated with the identified client session and to identify start or end entries; grouping entries in the subset that belong to a complete client session; and adding and removing log file entries to the ring buffer so that the ring buffer implements a sliding window to process the log file entries in the memory into complete client sessions. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An article of manufacture having at least one recordable medium having stored thereon executable instructions and data which, when executed by at least one processing device, cause the at least one processing device to:
-
read a plurality of records from a file system into a ring buffer, where said plurality of records comprises a subset of all records in the file system; scan each record in the ring buffer to identify a user session for said record and to identify any start or end records in the ring buffer; allocate, for each identified user session, an index to identify all records in the ring buffer that are associated with the identified user session and to identify all start or end records; process the index to group all records in the ring buffer belonging to a complete user session, to output the grouped records for further analysis; and sequentially adding and removing log records to the ring buffer until all of the log records in the file system have been processed so that the ring buffer implements a sliding window to process all of the log records in the file system into complete user sessions. - View Dependent Claims (9)
-
-
10. A system for session-based processing of log files using a data processing system and network session data collected from one or more users, the system comprising:
-
a log file collection system for collecting a plurality of server request entries, wherein a server request entry comprises a session identifier; and a processing engine to process a subset of the plurality of server request entries to group the server request entries by session using the session identifier in each server request entry by; reading the subset of the plurality of server request entries from the log file collection into a ring buffer; scanning each server request entry in the ring buffer to identify a user session for said server request entry and to identify any start or end entries in the ring buffer; allocating, for each identified user session, an index to identify server request entries in the ring buffer that are associated with the identified user session and to identify start or end entries; processing the index to group server request entries in the ring buffer belonging to a complete user session; and adding and removing server request entries to the ring buffer so that the ring buffer implements a sliding window to process the server request entries in the log file collection system into complete user sessions. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A system for parsing web site logs one session at a time, comprising:
-
means for storing network session data from at least one server log file; means for reading a subset of the network session data into a ring buffer; means for processing the subset of the network session data in the ring buffer to group said network session data by session by allocating for each identified user session, an index to identify network session data in the ring buffer that is associated with the identified user session and to identify start or end network session data; and means for generating a first output file containing network session data grouped by session by processing the index to group network session data in the ring buffer belonging to a complete user session; means for adding and removing network session data to the ring buffer so that the ring buffer implements a sliding window to process the network session data into complete user sessions; and means for parsing said first output file. - View Dependent Claims (18, 19)
-
Specification