1、新增功能探针联动处置、心跳在线检测

2、syslog-consumer模块拆分 syslog-consumer-rule模块实现日志数据消费、解析、泛化入库。
This commit is contained in:
2026-05-28 14:30:06 +08:00
parent 19c563b3f3
commit a360895292
1479 changed files with 116572 additions and 4549 deletions
@@ -0,0 +1,47 @@
package com.haobang.syslog;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class TestSyslogServer {
public static void main(String[] args) throws Throwable {
// TODO Auto-generated method stub
DatagramSocket datagramSocket = new DatagramSocket(514);
while (true) {
DatagramPacket packet = new DatagramPacket(new byte[1000], 1000);
try {
//不会造成死循环,因为receive是阻塞式方法,若发送方不发送数据,则阻塞在该处
datagramSocket.receive(packet);
String msg = new String(packet.getData(), 0, packet.getLength());
//handelMessage(msg);
System.out.println(packet.getAddress() + "/" + packet.getPort() + ":" + msg);
packet.setData("I am server!!!".getBytes());
datagramSocket.send(packet);
Thread.sleep(1000);
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void handelMessage(String messageFragment){
StringBuilder currentMessage = new StringBuilder();
boolean isSplitMessage = messageFragment.endsWith("..."); // 根据拆分标志判断消息是否被拆分
if (isSplitMessage) {
// 拆分的消息片段,将其合并到当前消息
currentMessage.append(messageFragment.substring(0, messageFragment.length() - 3));
} else {
// 完整的消息,处理并重置当前消息
currentMessage.append(messageFragment);
handleCompleteMessage(currentMessage.toString());
currentMessage.setLength(0);
}
}
public static void handleCompleteMessage(String completeMessage){
System.out.println("接收到完整消息:" + completeMessage);
}
}