我每天生成 2 GB 的 Web 服务器日志,如何过滤它们?

I have 2 GB of web server logs produced each day how to filter them?

我有网络服务器,其他站点使用一些 GET 参数重定向到该服务器。 我的情况:

我应该使用哪种技术来 query/filter 该数据?以前我在一台 ubuntu 机器上下载文件,然后用 grep 获取结果。我也在 AWS 上测试了 Hadoop,但我发现它很难使用。

什么 technology/solution 在以下方面最好:

  1. 过滤速度
  2. 简单易学
  3. 轻松更改过滤规则

感谢您对此事的关注

在你的情况下,我会推荐 Elasticsearch(支持与多个 AWS 集成)。

它使用简单、速度足够快、可扩展,并且有很棒的插件,称为 kibana 和 logstash。

第一个用于可视化,第二个用于日志 parsing/filtering,它有一个配置文件,您可以在其中根据需要更改过滤器。

Here 很好的教程,让您可以开始使用 logstash。

您可以使用AWS云观察日志流;正确地,它是为您的需要而创建的。 您可以创建日志流,并在您的客户端(您的网络服务器)使用小代码,您可以自动将日志推送到云手表。

将日志数据发送到云观察后,您可以从日志文件中搜索、筛选、创建指标和仪表板。

例如,您想要计算日志中的所有 "failed login",或者您想要计算您的 Web 服务器下游大小或任何其他指标。

非常简单快捷。

还有云监视,您可以创建警报并在日志文件中发生某些事情时接收警报。

最后,您可以根据日志指标创建一个漂亮的仪表板。

享受云看!!

更多信息:

https://aws.amazon.com/cloudwatch/

http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchLogs.html