我想跟踪我的 django 网站的所有用户都在做什么。我想通过保存提供给他们的每个 HTML 页面来做到这一点。最简单的方法是什么?我目前正在考虑制作一个装饰器,在提供之前将 HTML 保存到文件中,但这需要在我的所有视图上添加该装饰器,这似乎并不理想。
问问题
106 次
3 回答
1
使用 django 信号。
request_finished
当 Django 完成处理一个HttpRequest
在您返回页面的每个视图的末尾发生的信号时,将调用该信号。在这里,您可以访问params
响应中的集合并按照向用户显示的方式生成页面,或者只是保存response_object
然后运行批处理以将其离线可视化。
于 2012-08-17T22:19:58.840 回答
0
您可以实现每个站点缓存,然后查询缓存以获取您的统计信息。然而,正如其他中间件所发布的那样,这似乎是理想的。
但是 - 请记住,每个请求都会调用中间件,因此如果您正在执行诸如 db writes 之类的 i/o 繁重任务,它将对您网站的性能产生负面影响。
于 2012-08-17T22:21:59.000 回答