python - Django 下怎么做日志審查
問題描述
現(xiàn)有的系統(tǒng)下,要增加一個(gè)日志審計(jì)。
現(xiàn)有的環(huán)境: Django+Mongodb 。
然后想直接用 logging 來處理日志,但是怎么入庫(kù)呢?
看到網(wǎng)上也有人討論 signals 來處理,這個(gè)塊不是很熟,想問一下,只處理 views 可以嗎,因?yàn)楝F(xiàn)有的環(huán)境沒有 models 的處理。 謝謝
問題解答
回答1:寫個(gè)裝飾器?如果沒有用到model的話
回答2:如果是想對(duì)models變化做logging,建議使用django-reversion。
更新:
你可以將用戶登入后讓他redirect到你用來記錄用戶登陸時(shí)間,ip,用戶名的view。再redirect到另一個(gè)view吧。
from ipware.ip import get_ipimport datetimeclass UserLoginLogView(View, LoginRequiredMixin): def get(self, request, pk):ip = get_ip(request)user = self.request.usertime = datetime.datetime.now()url = reverse(home)login_log = UserLoginLogModel.objects.create(user=user, ip=ip, time=time)return HttpResponseRedirect(url)
相關(guān)文章:
1. css3 - css before 中文亂碼?2. Mysql && Redis 并發(fā)問題3. mysql - 一個(gè)表和多個(gè)表是多對(duì)多的關(guān)系,該怎么設(shè)計(jì)4. css - 求推薦幾款好用的移動(dòng)端頁(yè)面布局調(diào)試工具呢?5. mysql新建字段時(shí) timestamp NOT NULL DEFAULT ’0000-00-00 00:00:00’ 報(bào)錯(cuò)6. javascript - 百度echarts series數(shù)據(jù)更新問題7. javascript - node服務(wù)端渲染的困惑8. php - 第三方支付平臺(tái)在很短時(shí)間內(nèi)多次異步通知,訂單多次確認(rèn)收款9. html5 - h5寫的app用的webview,用手機(jī)瀏覽器打開不顯示?10. javascript - webpack --hot 熱重載無效的問題
