Logstash + ElasticSearch + Kibana 组合不同文档中不同字段的结果

Logstash + ElasticSearch + Kibana combine results from different fields in different documents

我们通过 Elasticsearch (2.1.0) 和 Kibana (4.3.0) 分析了 Apache 日志。 日志由 Web 服务器上的 Logstash 运行 解析并传送到 Elasticsearch,并读取 Apache 组合日志格式。 一切正常,但现在我们需要分析更复杂的模式。 我们有字段为“purchase_id”的文档,它具有整数值(如 130012、130016、133552 等)。 我们有其他文档,其整数字段“view_id”具有相同的值(如 130012、130016、133552 等)

这两个字段永远不会出现在同一个文档中,因为这些字段是从 Apache 日志中的不同 URI 中提取的。 我们的目标是计算和可视化在给定时间范围内“purchase_id”中的值与“view_id”中的值相比出现的百分比。 例如,假设我们想查看项目 130012 的当前购买率。它可能在最后 30 秒内在具有字段“purchase_id”的文档中出现 1000 次,在同样的最后 30 秒内它可能在具有字段的文档中出现 40000 次字段“view_id”。 这是显而易见的,因为与接触产品的人数相比,只有少量人购买商品。我需要计算和可视化,在时间范围内,项目 130012 有 1000 次 purchase_id,项目 130012 有 40000 次 view_id,然后将 1000 除以 40000 并乘以 100%,这样我在仪表板上可视化了 2.5% (对于项目 130012)。 当然我有很多这样的 purchase_id=view_id=(some number):int 对,所以我需要计算所有它们的百分比并显示,假设 20 个百分比最高。 这将让我知道与我们投资的广告相比最畅销的商品。

我会跟踪 this issue 的 kibana。