2017-07-24 4 views
0

Ich habe von meinem Client die Anforderung, die Tomcat-Server-Protokolldatei für einen Back-End-REST-basierten App-Server zu verarbeiten, der auf einem Cluster bereitgestellt wird. Clint möchte aus diesen Daten mit verschiedenen Parametern "Zugriff" und "Häufigkeit" erzeugen.App-Server Protokollprozess

Mein ursprünglicher Plan ist, dass diese Daten aus dem App-Server-Protokoll -> drücken Sie Spark-Streaming mit Kafka und verarbeiten Sie die Daten -> diese Daten zu HIVE speichern -> Zeppelin verwenden, um diese verarbeiteten und zentralen Protokoll zurück Daten und generieren Berichte nach Kundenwunsch.

Aber nach meinem Wissen hat Kafka keine Funktion, die Daten aus der Protokolldatei lesen und sie im Kafka-Broker selbst veröffentlichen kann. In diesem Fall haben wir einen Scheduler-Job-Prozess geschrieben, der das Protokoll von Zeit zu Zeit liest senden Sie sie in Kafka-Broker, was ich nicht tun möchte, da es in diesem Fall keine Echtzeit ist und es Synchronisationsprobleme geben kann, über die wir uns Gedanken machen müssen, da wir 4 Instanzen von Anwendungsservern haben.

Eine andere Option, ich denke, wir haben in diesem Fall Apache Flume.

Kann mir jemand vorschlagen, welche wäre besser Ansatz in diesem Fall oder wenn in Kafka, haben wir einen Prozess zum Lesen von Daten aus der Protokolldatei allein und was sind die Vorteile oder Nachteile, die wir Feature in beiden haben können die Fälle?

Ich denke, eine andere Option ist Flume + Kakfa zusammen, aber ich kann nicht viel spekulieren, was passieren wird, da ich fast keine Ahnung von Gerinne habe.

Jede Hilfe wird ...... :-)

Vielen Dank ....

Antwort

0

Sie Kafka Connect (Dateiquelle Stecker) verwenden können, sehr geschätzt werden Tomcat-Protokolle zu lesen/verbrauchen Dateien & schieben Sie sie zu Kafka. Spark-Streaming können dann konsumieren von Kafka Themen und Churn die Daten

tomcat -> Protokolle ---> kafka verbinden -> kafka -> Funke -> Hive

+0

kafka verbinde ich denke, wird nicht ich bin auf der Suche in als es wird nicht gut passen. Ich behebe dieses Problem mit der Kanalsynchronisation mit Kafka. Vielen Dank für Ihre Antwort. – Biswajit

Verwandte Themen