public class UpdReceive implements Runnable{
public static int syslog_port = 1514;
public static int buffer_size = 8 * 1024;
public static int receive_size=20000000;
private static DatagramSocket socket=null;
private byte[] syslogbuffer=new byte[buffer_size];
public static void main(String[] args) {
Thread t = new Thread(new UpdReceive());
t.start();
}
public void run() {
try {
socket = new DatagramSocket(syslog_port);
socket.setReceiveBufferSize(receive_size);
DatagramPacket syslogdata=new DatagramPacket(syslogbuffer,buffer_size);
while (true)
{
try
{
socket.receive(syslogdata);
String source=syslogdata.getAddress().getHostAddress();
byte[] eventbuffer=new byte[syslogdata.getLength()];
System.arraycopy(syslogdata.getData(), 0, eventbuffer, 0, syslogdata.getLength());
String str = new String(eventbuffer);
System.out.println(str+"====ip="+source);
}
catch (java.io.IOException e)
{
}
syslogdata.setLength(buffer_size);
}
} catch (SocketException e) {
e.printstacktrace();
}
}
}