问题描述
我们如何在不使用logstash和Beats的情况下通过Java来摄取数据以进行弹性搜索,是否有诸如kafka之类的选项,或诸如仅使用不带任何工具的java之类的选项
解决方法
我不确定您为什么不考虑Filebeats-> Elastic。但是,是的,还有其他方法可以将日志发送到Elastic search。
此外,您没有提及源是什么,是否要插入应用程序日志,数据库。假设您还想发送微服务日志,则下面的选项也适用于发送其他数据。
由于您不想使用Filebeat,因此应添加自定义代码以收集,优化,格式化和发布日志。
- 您可以使用Kafka Sink连接器进行弹性搜索来移动所有日志
- 此外,您还可以使用UDP协议发送(客户端)日志和监听(服务器)日志,然后实现缓冲区并提取到Elastic。
您可以开发一个公共库,其中包含所有这些代码并在您的所有Java应用程序中使用。
简单的udp客户端服务器代码-https://github.com/suren03/udp-server-client