字段中的多个词可视化
问题描述:
我试图以一种可以绘制图形的方式将kibana可视化,其中客户向购物车添加了某物与哪些顾客从购物车中移除了物品。我从错误日志中获取这些数据。字段中的多个词可视化
这里是数据的
{
"_index": "filebeat-2016.03.08",
"_type": "php-error",
"_id": "AVNUOptErt39_iTb3Riw",
"_score": null,
"_source": {
"message": "[Mon Mar 07 20:15:35.571673 2016] [:error] [pid 13829] [client 24.220.167.100:56888] {\"email\":null,\"name\":\" \",\"message\":\"remove from cart\",\"remaining_cart_items\":\"{\\\\\"total\\\\\":\\\\\"1 item(s) - $16.26\\\\\"}\"}, referer: https://exsite.com/",
"@version": "1",
"@timestamp": "2016-03-08T03:15:36.786Z",
"beat": {
"hostname": "ip-110-0-0-154",
"name": "ip-110-0-0-154"
},
"count": 1,
"fields": null,
"input_type": "log",
"source": "/var/log/apache2/error.log",
"type": "log_format_error",
"host": "ip-10-0-0-154"
},
"fields": {
"@timestamp": [
1457406936786
]
},
"sort": [
1457406936786
]
}
你可以看到有一个JSON例如,我可以用在dicover进行搜索,然后创建一个可视化出来的“从购物车中删除”。下面是添加到购物车数据
{
"_index": "filebeat-2016.03.08",
"_type": "php-error",
"_id": "AVNUOhKOrt39_iTb3Riv",
"_score": null,
"_source": {
"message": "[Mon Mar 07 20:14:56.377612 2016] [:error] [pid 13839] [client 24.220.167.100:56882] {\"email\":null,\"name\":\" \",\"message\":\"Added to cart\",\"add_to_cart\":\"{\\\\\"success\\\\\":\\\\\"Success: You have added <a href=\\\\\\\\\\\\\"https:\\\\\\\\\\\\/\\\\\\\\\\\\/site.com\\\\\\\\\\\\/whitesting\\\\\\\\\\\\\">My Test<\\\\\\\\\\\\/a> to your <a href=\\\\\\\\\\\\\"https:\\\\\\\\\\\\/\\\\\\\\\\\\/site.com\\\\\\\\\\\\/index.php?route=checkout\\\\\\\\\\\\/cart\\\\\\\\\\\\\">shopping cart<\\\\\\\\\\\\/a>!\\\\\",\\\\\"total\\\\\":\\\\\"2 item(s) - $32.51\\\\\"}\"}, referer: https://exsite.com/dtesting",
"@version": "1",
"@timestamp": "2016-03-08T03:15:01.767Z",
"beat": {
"hostname": "ip-110-0-0-154",
"name": "ip-110-0-0-154"
},
"count": 1,
"fields": null,
"input_type": "log",
"source": "/var/log/apache2/error.log",
"type": "log_format_error",
"host": "ip-10-0-0-154"
},
"fields": {
"@timestamp": [
1457406901767
]
}
}
所以现在如何我绘制这个数据,我可以看到有多少捞出多少的计数添加到购物车在那里。
,我在发现该查询是
"remove from cart" OR "Added to cart"
感谢
答
理想情况下你会解析使用类似logstash的日志行,并为此不必诉诸查询像你这样的,但如果您必须始终可以使用过滤器聚合。
当你正在构建一个可视化的(假设你使用的是条形图),您将创建下列聚集想象这样的数据:
- 计数文件中的每个桶度量(此是否有默认值)
- x轴的存储桶是时间域上的日期直方图
- 使用过滤器聚合分割条的存储桶。然后给这个agg两个过滤器,一个用“从购物车中删除”,另一个用“加入购物车”
为什么不用解析'message'字段与Logstash为了让这些JSON字段进入你的事件?查询它们并在可视化中使用它们会更容易。 – Val