【问题标题】:How to aggregate logs to a persistent table in splunk?如何将日志聚合到 splunk 中的持久表?
【发布时间】:2019-12-01 13:41:35
【问题描述】:

我的网络应用程序会记录每个用户的操作。
每个日志条目都包含用户 ID、操作(单击、双击等)、时间戳和简短描述。
特定用户的日志会存储几天, 因此,我需要将它们汇总到已处理的报告/数据中。
我想收集(并最终显示)一个特定的动作(比如说双击) 每个用户及其描述。

例如,我想要一个为每个日志(或一些延迟的日志)更新的表,
聚合一个userId的数据,他所有双击的时间戳,double的计数
点击次数和每次双击的说明。

我该如何解决这个问题?
splunk 提供了哪些工具来处理诸如聚合被删除的日志流之类的事情?

【问题讨论】:

    标签: logging aggregation splunk


    【解决方案1】:

    Splunk 一个聚合日志流的工具。将您的 Web 应用程序日志转发到 Splunk,它们将一直保留在那里,直到您用完磁盘空间或它们过期(默认时间为 7 年),即使原始源消失了。在 Splunk 中获得数据后,您可以按照您的描述对其进行报告。

    【讨论】:

    • 我的服务记录了很多数据,我们无法存储很长时间。您建议如何生成可更新的持久摘要?考虑一个关系数据库,我可以在其中派生日志并相应地更新行
    • 正如 Simon Duff 建议的那样,考虑为您的数据使用摘要索引。但是,您将无法更新汇总索引中的行。为了能够进行更新,您需要将摘要存储在查找文件(替换整个查找以更新它)或 KV 存储(可以替换单个行)中。请记住,Splunk 不是关系数据库。
    【解决方案2】:

    正如 RichG 所说,您可以将 Splunk 配置为根据需要保留该数据。但是,如果您只想保留某些元素,您可能需要查看 Splunk 中的摘要索引https://docs.splunk.com/Documentation/Splunk/8.0.0/Knowledge/Usesummaryindexing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-05
      • 2016-08-23
      • 1970-01-01
      • 2011-02-07
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多