首页  >  问答  >  正文

python - Django 下怎么做日志审查

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

现有的环境: Django+Mongodb 。

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

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

高洛峰高洛峰2683 天前696

全部回复(2)我来回复

  • 天蓬老师

    天蓬老师2017-05-18 11:01:11

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

    回复
    0
  • 黄舟

    黄舟2017-05-18 11:01:11

    如果是想对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)

    回复
    0
  • 取消回复