跟踪电子商务访客和销售

时间:2018-04-03 17:27:45

标签: mysql node.js elasticsearch e-commerce analytics

我正在使用 NodeJS,ElasticSearch和MySQL 构建电子商务应用程序。
我希望能够跟踪访问者,以确定哪些类别受欢迎,哪些产品最受欢迎(基于观点和出售金额)等 我计划在每个国家/地区监控这些事情。

问题是我不知道有什么好办法可以做到这一点。我很清楚 Google Analytics ,但它只收集数据。我无法将其集成到我的应用程序中。 (我无法使用来自GA的数据向用户展示受欢迎的内容)。我找了 node.js 包可以做这种事情,但没找到。

因此,我觉得我只剩下一个选项 - 创建一个我自己的系统来跟踪热门项目,类别等。我将如何去做?

首先,我觉得我应该创建一些新表,一个用于p opular产品,一个用于热门类别。然后,在每次点击(产品或类别上的)上,我会向表中添加一个新条目,并指定访问者的国家/地区。

例如,当某人点击某个产品时,请将其附加到表格中:

productID | countryOfClick

我能做的另一件事只是将新列添加到产品表中。 ( numberOfClicks,numberOfPurchases )等,但是通过这种方法,我不知道如何跟踪点击来自哪些国家/地区。

还有第三种方法吗?
我完全忽略了这一点吗?

1 个答案:

答案 0 :(得分:2)

如果您的应用程序正在生成一些日志文件(并且在生产中肯定会出现这种情况,我猜),只需记录您对某些日志文件感兴趣的事件: 例如12:38:30 [美国] GET / products / item2344。

然后简单地用logstash(提取感兴趣的行)解析日志文件,它将在弹性搜索中插入。在使用kibana的弹性搜索中,您可以按国家/地区,产品创建聚合分组,计算更多请求的页面等...

优点是,当用户访问网站时,您不会减慢系统速度,因为日志分析和提取将以异步方式完成。

如果您的应用程序正在生成日志文件日志,请考虑为其保留几个小时。