微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java udp 接收日志

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();
            }
        
        
    }

}

原文地址:https://www.jb51.cc/wenti/3283778.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐