nsmcp::AccessRecordParser method parse (public)
<instance of nsmcp::AccessRecordParser> parse line
Defined in /usr/local/ns/tcl/nsmcp/access-record.tcl
Parse one physical access-log line into a request record. Validate the supported layout and delegate decoded fields to the common field normalizer.
- Parameters:
- line (required)
- Raw physical log line to inspect.
- Returns:
- A request dictionary, or an empty result for a rejected line.
- Testcases:
- No testcase defined.
Source code: if {[string first \x00 $line]>=0} { return {} } if {![regexp {^(\S+)\s+(\S+)\s+("(?:[^"\\]|\\.)*"|\S+)\s+(\[[^\]\r\n]+\]|[0-9]+)\s+"((?:[^"\\\r\n]|\\.)*)"\s+([1-5][0-9]{2})\s+(-|[0-9]+)(.*)$} $line -> peer identifier user stamp request status bytes tail]} { return {} } return [:fields $peer $identifier $user $stamp $request $status $bytes $tail]XQL Not present: Generic, PostgreSQL, Oracle
![[i]](/resources/acs-subsite/ZoomIn16.gif)