use MY::Variables; use Socket; $addr = sockaddr_un($LogSocket); socket(SERVER, PF_UNIX, SOCK_DGRAM, 0) || die "Could not create socket: $!"; unlink("$LogSocket"); bind(SERVER, $addr) || die "Could not bind: $!"; #select((select(SERVER), $| = 1)[0]); #enable command buffering while (1) { $x = recv(SERVER,$msg,1024,0); if (defined($x)) { my ($time,$level,$Program,$message,@sites) = split(chr(28),$msg); foreach my $site (sort @sites) { my $email = "$time [$Program] $message"; open(LOG, ">> $GnrtLog/$site.log") || die "cannot open $LogSocket $!"; print LOG $email; close(LOG); } } else { print "hi"; $count++; }