in reply to perl log search

This should get you started (untested):
use strict; use warnings; my %conn; while(<>){ next unless my ($c) = m/conn=(\d+)\s/; m/ connection from ([\d\.]+) to ([\d\.]+) port (\d+)/ and do{ $conn{$c}{FROM}=$1; $conn{$c}{TO} =$2; $conn{$c}{PORT}=$3; next; }; m/BIND dn="([^"]*)"/ and do{ $conn{$c}{BINDDN}=$1; next; } } for (sort keys %conn){ print "Connection $_ $conn{$_}{FROM} -> $conn{$_}{TO} \[$conn{$_}{P +ORT}\] DN=$conn{$_}{BINDDN};\n"; }
Update:Fixed typo for $2, and added print logic.
Update2: Fixed syntax (Missing semicolon), and allowed for empty DN

            "XML is like violence: if it doesn't solve your problem, use more."