my $MySocket=new IO::Socket::INET->new(LocalPort=>$listenport,Proto=>'udp'); while(1) { #receive syslog $MySocket->recv(my $text,1500); #some logging statements #put it in a queue $MyQueue->enqueue($text); }