From a5d2fb68779d1c2c0c3f07b713513f3d0c3ab559 Mon Sep 17 00:00:00 2001 From: "wang.wangqiang" Date: Wed, 17 Apr 2024 15:30:42 +0800 Subject: [PATCH] add log_count --- .../__pycache__/settings.cpython-310.pyc | Bin 2254 -> 2264 bytes cli_creator/cli_creator/settings.py | 1 + cli_creator/firewall/models.py | 9 ++++++ cli_creator/firewall/urls.py | 3 +- cli_creator/firewall/views.py | 29 ++++++++++++++++-- cli_creator/requirements.txt | Bin 242 -> 2502 bytes 6 files changed, 39 insertions(+), 3 deletions(-) diff --git a/cli_creator/cli_creator/__pycache__/settings.cpython-310.pyc b/cli_creator/cli_creator/__pycache__/settings.cpython-310.pyc index 7d6c99ff59ad2aeac814cdff6e63619645b6fff5..22a26eb2845b235cbe13a76d3a12790c265bd884 100644 GIT binary patch delta 93 zcmX>nctemkpO=@50SLrwt2YBQ3KiwLCE=XY)s<<&2C`lV`Hr t0Fp(l6^tC4U$cq>g*G#@Gcq#Xn#{_fz@`8+qex-0Hb({{*W@W2RsgJE7^wgN delta 90 zcmca1cutTvpO=@50SIKbiKorl$m`3*$Tm5eY1-!BOv@P=Z%tmzasx=#uvV~vR8@IQ q7GM>b%*XbR@z!Quc1A|VsLA{s3T#S1xgw>>rW_fJoRjBqSOEZp4;Tgj diff --git a/cli_creator/cli_creator/settings.py b/cli_creator/cli_creator/settings.py index d36fe14..fcfb4e9 100644 --- a/cli_creator/cli_creator/settings.py +++ b/cli_creator/cli_creator/settings.py @@ -37,6 +37,7 @@ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'firewall', ] MIDDLEWARE = [ diff --git a/cli_creator/firewall/models.py b/cli_creator/firewall/models.py index 71a8362..659b60d 100644 --- a/cli_creator/firewall/models.py +++ b/cli_creator/firewall/models.py @@ -1,3 +1,12 @@ from django.db import models # Create your models here. + +class cli_logs(models.Model): + ip_address = models.TextField(max_length=30) + time = models.DateTimeField(max_length=30) + info = models.TextField(max_length=255) + def __str__(self): + return '%s %s %s'%( self.ip_address, self.time, self.info) + class Meta: + app_label = 'firewall' \ No newline at end of file diff --git a/cli_creator/firewall/urls.py b/cli_creator/firewall/urls.py index ae95c2a..5b853f6 100644 --- a/cli_creator/firewall/urls.py +++ b/cli_creator/firewall/urls.py @@ -3,5 +3,6 @@ urlpatterns = [ path('forticli',views.forticli, name='forticli'), - path('forticli_modify',views.forticli_modify, name='forticli_modify') + path('forticli_modify',views.forticli_modify, name='forticli_modify'), + path('logs_count', views.logs_count, name='logs_count') ] \ No newline at end of file diff --git a/cli_creator/firewall/views.py b/cli_creator/firewall/views.py index 73f469b..957f0ad 100644 --- a/cli_creator/firewall/views.py +++ b/cli_creator/firewall/views.py @@ -3,6 +3,28 @@ from rest_framework.response import Response from django.http import JsonResponse from firewall.forti import FirewallConfigurator +from firewall.models import cli_logs +from django.db.models import Count +from datetime import datetime, timedelta + +@api_view(['GET']) +def logs_count(request): + if request.method == 'GET': + today = datetime.now().date() + # 计算昨天的日期 + data_count_list=[] + for i in range(0, 7): + # 计算当前日期的前 i 天日期 + date = today - timedelta(days=6-i) + + # 查询当天的数据量 + data_count = cli_logs.objects.filter(time__date=date).count() + + # 打印结果 + print(f"前{i}天的数据量:", data_count) + data_count_list.append(data_count) + + return Response(data_count_list) @api_view(['GET', 'POST']) def forticli(request): @@ -30,8 +52,10 @@ def forticli(request): 'result': result_command_str, 'message': 'Success' } - + obj = cli_logs(ip_address="127.0.0.1", time="2024-04-17", info="forticli_create") + obj.save() return Response(data) + else: return Response({'message': 'Only POST requests are allowed'}, status=400) @@ -60,7 +84,8 @@ def forticli_modify(request): 'result': result_command_str, 'message': 'Success' } - + obj = cli_logs(ip_address="127.0.0.1", time="2024-04-17", info="forticli_create") + obj.save() return Response(data) else: diff --git a/cli_creator/requirements.txt b/cli_creator/requirements.txt index d4e914f69b6fe3ec262192c929431acd04ad723e..952d1bedb7a8431d240059997cb0f2bb373f71eb 100644 GIT binary patch literal 2502 zcma);OK%!M5QOI(DL(~dz|TVtQF6>voN}~*HP{R5u!~nV?y0V- z?wO@An#u6MrImt>7!Q<3 zrA1(Mp#c7_mzj4`yG?B%jU#rfYK~qBWh=Bh<#3WpsCRT0$ep-UdnIE2sZlspX;V7A zvm!^paejear>b^!GkdY?q)n^4+{7aaS$0SDKp z)1$KLsKM!?k)4<+vJ(16=V8G)X7wWQ*_BSGSMta+0sZZZmo?{9sV*J*R}LH0=yfY(?-gEch2|YCcSfFuZ>sfK?`is; zK7~K_xwuWn7rFFd-)H*wO;n{r)J7GLh0|g z=SeGcCf7G7sQBfrB35QPKiOc2KXiH{mOD)=vz9l)XQztNOFsdh;}cn#yWMJ);jLKc zmTl$hCa}C0Wv>o^@N>kQNk(x8%x!GnTx!7QHeq7nS3D_G(#o@1y4f{! zX4ckc_4EV%#LOsr&Yp9V%~XRdGW^WzXFMua3Ej?R1n;nSz*_89navy<=*h9ro}i9N z%+E+NxfPAHlZv^xz$vRB!`^dG*LtyUlZe|n*pBv3#+NyR@ME^W;RixR2RBki2f?$q zQx>;+b}0Wxbgyse$4;j_LHCiv4p5h#8{t9K?v&doyL7fx@NG_v`->eZESMjo`~j<> BYl;8> literal 242 zcmYk0+X})k5JbpBcB>*`37eTYnb)%+v!x>u*|5}^ zF=3$zj2W?FN5e^;-qpF3sitUtB=d{H*0SuBme*a