2012-12-11 11 views
5

Buduję narzędzie do przeglądania dzienników, które będzie obsługiwać wyszukiwanie w czasie rzeczywistym w TB dzienników. Zdecydowałem się przechowywać logi w Solr i używać go jako wyszukiwarki. Będę używać Django jako ramy w moim projekcie. Aby użyć Solr z Django zobaczyłem, że jest stóg siana. Teraz moja architektura będzie taka.Django, Haystack, Solr, decyzja dotycząca architektury MongoDB

   Store Index   Search    Show 
Log Stream ----------------> Solr --------> Haystack ------> Django 

Moje logi są zwykłymi dziennikami serwera linuksowego, takimi jak sieć, operacyjna, błąd itp. Syslog wysyła dzienniki. Pozwolę na filtrowanie oparte na całej linii dziennika. Pozwolę sortowanie według kolumn, ex: IP, data kolumny kolumny itp

Przykład dziennika:

Dec 11 13:24:03 2012 [firewall] R0 SRC=192.168.9.11 DST=192.168.11.29 LEN=83 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=36904 DPT=161 LEN=63 

chcę zapytać czy lepiej używać MongoDB jako pamięci masowej, filtrowania i wyszukiwania w dziennikach lub Solr zrobi to lepiej. Elasticsearch również pojawia się w moim umyśle. Jaki będzie twój wybór w takim przypadku.

Z góry dziękuję.

+0

dlaczego potrzebujesz MongoDB? Solr zapisuje logi już dla ciebie. –

+0

Na przykład tutaj: http://highscalability.com/how-rackspace-now-uses-mapreduce-and-hadoop-query-terabytes-data Używają hdfs do przechowywania logów, które zamieniłem na MongoDB. Solr indeksuje tylko. – denizeren

+0

Wygląda na to, że nie będę potrzebował MongoDB, jak pokazano tutaj http://graylog2.org/about. Wystarczy tylko wyszukiwarka. – denizeren

Odpowiedz

3

Po co na nowo odkrywać koło? Jest Logstash, z niesamowitym interfejsem: Kibana. Możesz go podać za pomocą rsyslog. Jednakże, jeśli naprawdę chcesz/potrzebujesz ponownie wdrożyć serwer dziennika, Logstash używa ElasticSearch. Poszedłbym z tym.

+0

To mój starszy projekt, więc muszę to zrobić :) – denizeren

Powiązane problemy