浏览代码

Merge branch 'test' of http://192.168.136.99:3000/servers/ASJServer into peng

peng 2 年之前
父节点
当前提交
69eb74e9c9
共有 2 个文件被更改,包括 26 次插入3 次删除
  1. 5 3
      AdminController/LogManagementController.py
  2. 21 0
      Controller/Cron/CronTaskController.py

+ 5 - 3
AdminController/LogManagementController.py

@@ -324,7 +324,7 @@ class LogManagementView(View):
             count = app_log_qs.count()
             log_qs = app_log_qs.values(
                 'user__username', 'uid', 'average_delay', 'status', 'filename', 'add_time', 'user_id').order_by(
-                'add_time')[(page - 1) * line:page * line]
+                '-add_time')[(page - 1) * line:page * line]
             app_log_list = CommonService.qs_to_list(log_qs)
             # 添加下载链接
             aws_s3_client = boto3.client(
@@ -335,8 +335,10 @@ class LogManagementView(View):
                 config=botocore.client.Config(signature_version='s3v4'),
             )
             for app_log in app_log_list:
-                obj = app_log['user_id']
-                obj = 'app_log/' + obj + '/{}'.format(app_log['filename'])
+                filename = app_log['filename']
+                if not filename.endswith('.txt'):
+                    filename += ".txt"
+                obj = 'app_log/' + app_log['user_id'] + '/{}'.format(filename)
                 appLog_url = aws_s3_client.generate_presigned_url(
                     ClientMethod='get_object',
                     Params={

+ 21 - 0
Controller/Cron/CronTaskController.py

@@ -51,11 +51,31 @@ class CronDelDataView(View):
             return self.delCloudLog(response)
         elif operation == 'delTesterDevice':  # 定时删除测试账号下的设备数据
             return self.delTesterDevice(response)
+        elif operation == 'delAppLog':  # 定时删除app日志
+            return self.del_app_Log(response)
         elif operation == 'cloud-log':
             return self.uid_cloud_storage_upload_count(response)
         else:
             return response.json(404)
 
+    @staticmethod
+    def del_app_Log(response):
+        """
+        定时删除app日志
+        @param response: 响应对象
+        @return:
+        """
+        nowTime = int(time.time())
+        try:
+            cursor = connection.cursor()
+            month_ago_time = nowTime - 30 * 24 * 60 * 60  # 删除30天前的数据
+            sql = 'DELETE FROM `app_log` WHERE add_time<{}'.format(month_ago_time)
+            cursor.execute(sql)
+            cursor.close()
+            return response.json(0)
+        except Exception as e:
+            return response.json(500, repr(e))
+
     @staticmethod
     def uid_cloud_storage_upload_count(response):
         try:
@@ -974,3 +994,4 @@ class CronCollectDataView(View):
             return response.json(0)
         except Exception as e:
             return response.json(500, repr(e))
+