我有以下自定义系统日志服务器(使用Syslog4J)的代码,它在视窗上工作。
final UDPNetSyslogServerConfig udpConfig = new UDPNetSyslogServerConfig();
udpConfig.setPort(Integer.parseInt(port));
udpConfig.setHost(host);
udpConfig.addEventHandler(new Handler());
udpConfig.setUseDaemonThread(false);
SyslogServerIF server = SyslogServer.createInstance(host + port, udpConfig);
server.run();它侦听传入的事件,并在收到事件时调用处理程序(方法)。
如果我在Mac上运行相同的代码,它就会出来。即使我使用循环来等待事件,事件也不会被捕获。
while (!stop) {
SyslogUtility.sleep(1000);
}即使是处理程序的initialize()方法在Mac上也不会被调用。
发布于 2014-03-05 06:43:12
您尝试在Mac上使用哪个端口?
是否与正在使用的端口(默认为514)冲突?
检查MacOS上的/etc/syslog.conf,查看它用于内置syslog的端口。在Ubuntu上,这可以在/etc/rsyslog.conf中找到。
https://stackoverflow.com/questions/18098738
复制相似问题