%alertlog = map { $_->[0] => [ $_->[2], $_->[3], $_->[4], $_->[5], $_->[6] ]; } sort { Date_Cmp($a->[1], $b->[1]) } map { chomp; @loglines = split(/\s+/, $_, 5); $timestring = $loglines[0] . ' ' . $loglines[1]; [ $loglines[3], (ParseDate($timestring), $loglines[0], $loglines[1], $loglines[2], $loglines[3], $loglines[4]) ]; } @messages;