...is the main issue here. When I first wrote the function it used a pattern something like:
$pattern = '/^([^ ]+) ([^ ]+) ([^ ]+) (\[[^\]]+\]) "(.*) (.*) (.*)" ([0-9\-]+) ([0-9\-]+) "(.*)" "(.*)"$/';
and to assign variables, it was using:
list($whole_match, $remote_host, $logname, $user...