1

我正在考虑编写自己的工具来跟踪访问者/销售,因为 Google Analytics 和其他工具在数据部门还不够全面。他们有很好的 GUI,但如果你有 SQL 技能,那么这些 GUI 是不必要的。

我想知道最好的方法是什么。

我可以简单地将 IP 等记录到文本文件中,然后在后台运行异步服务以将其转储到数据库中。或者,也许这太过分了,我可以直接把它放在数据库中。但就可扩展性而言,每个 Web 请求一个 DB WRITE 似乎是一个糟糕的选择。想法?

作为旁注,可以捕获引用 URL 或任何传入流量,对吗?因此,如果它们来自论坛帖子或其他内容,您可以跟踪该实际 URL,对吗?

看起来这是一个非常标准的要求,我不想重新发明轮子。

一如既往,感谢 SOF 的洞察力。

4

3 回答 3

3

这个问题的答案提到了开源 GAnalytics 替代品 Piwik——不是 C#,但你可能会从实现中得到一些想法。

对于 .NET 解决方案,我建议阅读 Matt Berseth 的Visit/PageView Analysis Services Cube博客文章(以及更早的示例另一个示例,因为在他的网站上不容易找到)。

我不确定他是否曾经发布过服务器端代码(尽管您会openurchin.js在他的 html 中找到他的链接),但您会发现大部分概念都得到了解释。按照他的指示,您可能会很快得到一些工作。

我认为您不想写入文本文件 - 可能会出现锁定问题;我会在数据库表中插入 INSERT。如果表变得太大,您总是可以定期“汇总”结果并清除旧记录。至于 REFERER Url,您绝对可以从 HTTP HEADERS 中获取该信息(假设它是由客户端发送的,并且没有被代理或严格的 AV 软件设置剥离)。

顺便说一句,请记住,Google Analytics 为统计数据增加了很多价值 - 它对 IP 地址进行地理编码以按位置(国家/城市)以及 ISP/IP 所有者显示结果。他们的 javascript 进行 Flash 检测并将用户代理分割成有用的“浏览器类别”,并且还检测其他用户设置,如操作系统和屏幕分辨率。如果您想获得相同级别的报告,则必须进行一些重要的编码 - 更不用说获取进入和退出页面信息、回访、唯一访问者、回访者、花费时间的数据和计算网站等

您可能还想查看一个Google Analytics API 。

于 2009-07-19T05:41:59.883 回答
0

您是否查看过Log Parser来解析 IIS 日志?

于 2009-07-19T02:06:56.470 回答
0

尽管写入文本文件比写入数据库更有效,但我不会想到 - 事实上恰恰相反。您必须在写入时锁定文本文件,以避免并发问题,这可能比写入数据库(专为这种情况而设计)产生的影响更大。

我也会警惕重新发明轮子。我完全不清楚您认为定制的点击记录器可以比谷歌分析做得更好,谷歌分析非常全面。相信我,我一直在写自己的,而 Analytics 让它变得非常多余。

于 2009-07-19T13:32:20.727 回答