2012-12-11 21 views
5

Günlüklerin TB'lerinde gerçek zamanlı arama işlemlerini gerçekleştirecek bir günlük izleme programı yapıyorum. Günlükleri Solr'da saklamaya ve arama motoru olarak kullanmaya karar verdim. Projemde Django'yu çerçeve olarak kullanacağım. Solr'i Django ile kullanabilmek için haystack olduğunu gördüm. Şimdi mimarim böyle olacak. Sistem Günlüğü günlükleri gönderiyor vs. ağında, operasyonel hata gibiDjango, Haystack, Solr, MongoDB mimarisi kararı

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

Benim günlükleri, sıradan Linux sunucu kayıtları. Tüm günlüklere göre filtrelemeye izin vereceğim. Ben ex, sütunlarla sıralama sağlayacaktır: vb ip sütun, tarih sütunu

Örnek günlüğü: Daha iyi depolama, filtreleme gibi MongoDB kullanmak ve günlüklerde arama olduğunu sormak istiyorum

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 

veya Solr bunu daha iyi yapacak. Elasticsearch de aklıma geliyor. Böyle bir durumda seçiminiz ne olacak?

Şimdiden teşekkürler.

+0

Neden MongoDB'ye ihtiyacınız var? Solr, sizin için zaten olan günlükleri saklıyor. –

+0

Örneğin burada: http://highscalability.com/how-rackspace-now-uses-mapreduce-and-hadoop-query-terabytes-data MongoDB ile değiştirdiğim günlükleri saklamak için hdfs kullanıyorlar. Solr sadece endeksleniyor. – denizeren

+0

Burada göründüğü gibi MongoDB gerekmez http://graylog2.org/about sadece arama motoru yeterli olacaktır. – denizeren

cevap

3

Tekerleği neden yeniden icat ediyorsunuz? Logstash, muhteşem bir arayüzle: Kibana. Rsyslog kullanarak besleyebilirsiniz. Ancak, bir günlük sunucusunu gerçekten yeniden yapılandırmanız gerekirse/ihtiyacınız varsa, Logstash ElasticSearch'u kullanır. Ben onunla giderdim.

+0

Üst düzey projem, bu yüzden bunu yapmalıyım :) – denizeren