2017-07-24 83 views
0

我的客户端需要处理部署在群集上的后端REST Based App服务器的应用程序(Tomcat)服务器日志文件。 Clint希望从具有不同参数的数据中生成“访问”和“频率”报告。应用程序服务器日志进程

我最初的计划是从App服务器日志中获取这些数据 - >使用kafka推送到Spark Streaming并处理数据 - >将这些数据存储到HIVE - >使用zeppelin找回那些处理过的集中日志数据并根据客户要求生成报告。

但根据我的知识,Kafka没有任何功能可以从日志文件中读取数据并将它们发布到卡夫卡代理中,在这种情况下,我们编写了一个调度程序作业进程,它将读取日志时间和把它们发送给卡夫卡经纪人,我不想这样做,因为在那种情况下,它不会是真正的时间,并且可能存在同步问题,我们必须担心同步问题,因为我们有4个应用程序服务器实例。

另一种选择,我认为我们在这种情况下是Apache Flume。

任何人都可以告诉我哪一个更好的方法在这种情况下,或者如果在卡夫卡,我们有任何过程来从自己的日志文件中读取数据,我们可以在两个功能的优点或缺点案件?

我猜想另一个选择是Flume + kakfa在一起,但我不能推测会发生什么,因为我几乎没有关于flume的知识。

任何帮助将不胜感激...... :-)

非常感谢....

回答

0

您可以使用卡夫卡连接(文件源连接器)来读取/消耗Tomcat的日志文件&推送他们到卡夫卡。然后星火流可以从卡夫卡的话题消耗和流失的数据

的tomcat - >日志--->卡夫卡连接 - >卡夫卡 - >火花 - >蜂巢

+0

卡夫卡连接我想不会,我寻找到的它不会很适合。我使用与kafka同步的flume解决了这个问题。非常感谢您的回复。 – Biswajit

相关问题