我正在构建一个日志查看实用程序,它将处理 TB 日志中的实时搜索。我决定将日志存储在 Solr 中并将其用作搜索引擎。我将在我的项目中使用 Django 作为框架。为了在 Django 中使用 Solr,我看到有 haystack。现在我的架构将是这样的。
Store Index Search Show
Log Stream ----------------> Solr --------> Haystack ------> Django
我的日志是普通的linux服务器日志,如网络、操作、错误等。Syslog正在发送日志。我将允许基于所有日志行进行过滤。我将允许按列排序,例如:ip 列、日期列等。
示例日志:
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
我想问一下,使用 MongoDB 作为日志中的存储、过滤和搜索是否更好,或者 Solr 会做得更好。我也想到了 Elasticsearch。在这种情况下,你的选择是什么。
提前致谢。