mysql - 捕获用户 Activity 日志的好工具

标签 mysql logging android-activity text

现在,在我们的网站中,我们正在 MySQL 或文本文件中记录所有用户 Activity (登录、点击等)。

在这两种情况下,IO 操作都会增加,从而导致站点性能下降。

我们需要不惜一切代价捕获用户 Activity 日志,是否有其他更好的方法可以在不影响网站性能的情况下捕获日志?

最佳答案

一些建议。

首先,Web 服务器(例如 Apache httpd)针对每个请求以纯文本文件形式捕获自己的日志。您可以使用标准Common Log Format或者您可以自定义它。这些日志有一个广泛的处理软件生态系统。如果您使用这些日志,您可以完全从应用程序代码中删除日志记录。您仍然会保留日志。我相信,这是性能最好的解决方案。但处理原木可能会很麻烦。

其次,您说您正在登录 MySQL 和文本文件。只登录其中一个怎么样?

第三,MySQL 提供 ARCHIVE access method对于 table 。它的写入成本非常低,并且占用少量磁盘空间。如果您使用 MySQL 进行日志记录,您应该考虑这种访问方法。它的缺点是不能建立索引。也就是说,MySQL 需要扫描整个表来满足其中包含 WHERE 子句的查询。

关于mysql - 捕获用户 Activity 日志的好工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28478019/

相关文章:

database - 您登录到您的数据库,当您的数据库关闭时您在哪里登录?

Android - 在单个 Activity 中切换多个布局

java - 如何在回家后重新进入应用程序时运行代码(Android)

android - 从另一个 Activity 返回 MainActivity

mysql - 将 T-SQL 转换为 MySQL

java - resultset.getObject 上的 AbstractMethodError

ios - Firebase Analytics 日志错误 Swift 3

java - 无法运行 quartz 调度程序

mysql - 当 Select 中的同一个表具有附加联接时更新

mysql - 如何为注释添加外键、引用和索引