Django 下怎么做日志审查

现有的系统下,要增加一个日志审计。

现有的环境: Django+Mongodb 。

然后想直接用 logging 来处理日志,但是怎么入库呢?

看到网上也有人讨论 signals 来处理,这个块不是很熟,想问一下,只处理 views 可以吗,因为现有的环境没有 models 的处理。 谢谢

阅读 4k
2 个回答

如果是想对models变化做logging,建议使用django-reversion。

更新:

你可以将用户登入后让他redirect到你用来记录用户登陆时间,ip,用户名的view。再redirect到另一个view吧。

from ipware.ip import get_ip
import datetime

class UserLoginLogView(View, LoginRequiredMixin):


    def get(self, request, pk):
        ip = get_ip(request)
        user = self.request.user
        time = datetime.datetime.now()
        url = reverse(home)
        login_log = UserLoginLogModel.objects.create(user=user, ip=ip, time=time)
        return HttpResponseRedirect(url)

写个装饰器?如果没有用到model的话

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题