Parcourir la source

中间件记录响应码正常接口日志

linhaohong il y a 1 an
Parent
commit
75c3dd28eb
2 fichiers modifiés avec 22 ajouts et 2 suppressions
  1. 16 2
      Ansjer/cn_config/test_settings.py
  2. 6 0
      MiddleWare/requestRecord.py

+ 16 - 2
Ansjer/cn_config/test_settings.py

@@ -183,7 +183,7 @@ CORS_ALLOW_HEADERS = (
 '''
 # 管理员邮箱
 ADMINS = (
-    ('admin', 'sonalh@foxmail.com'),
+    ('admin', 'linhaohong2001@163.com'),
 )
 
 # 非空链接,却发生404错误,发送通知MANAGERS
@@ -194,7 +194,7 @@ MANAGERS = ADMINS
 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
 EMAIL_HOST = 'smtp.163.com'  # QQ邮箱SMTP服务器(邮箱需要开通SMTP服务)
 EMAIL_PORT = 25  # QQ邮箱SMTP服务端口
-EMAIL_HOST_USER = 'chanjunkai@163.com'  # 我的邮箱帐号
+EMAIL_HOST_USER = 'linhaohong2001@163.com'  # 我的邮箱帐号
 EMAIL_HOST_PASSWORD = 'cjk1234'  # 授权码
 EMAIL_SUBJECT_PREFIX = 'website'  # 为邮件标题的前缀,默认是'[django]'
 EMAIL_USE_TLS = True  # 开启安全链接
@@ -251,6 +251,15 @@ LOGGING = {
             'formatter': 'standard',
             'encoding': 'utf-8',
         },
+        'success_code': {
+            'level': 'INFO',
+            'class': 'logging.handlers.RotatingFileHandler',
+            'filename': BASE_DIR + '/static/log/success_code/success_code.log',
+            'backupCount': 10,
+            'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
+            'formatter': 'standard',
+            'encoding': 'utf-8',
+        },
         'pay': {
             'level': 'INFO',
             'class': 'logging.handlers.TimedRotatingFileHandler',
@@ -278,6 +287,11 @@ LOGGING = {
             'level': 'INFO',
             'propagate': False
         },
+        'success_code': {
+            'handlers': ['success_code'],
+            'level': 'INFO',
+            'propagate': False
+        },
         'pay': {
             'handlers': ['pay'],
             'level': 'INFO',

+ 6 - 0
MiddleWare/requestRecord.py

@@ -41,6 +41,12 @@ class RequestRecordMiddleware(MiddlewareMixin):
                     logger.info('请求接口:{}, 请求方式:{}, 请求参数:{}, 响应数据:{}, 状态码:{}'.
                                 format(url, method, parameter, content, response.status_code))
 
+                else:
+                    # Log responses with result_code or code equal to 0 to a different file 'error_code_0.log'
+                    logger = logging.getLogger('success_code')
+                    logger.info('请求接口:{}, 请求方式:{}, 请求参数:{}, 响应数据:{}, 状态码:{}'.
+                                      format(url, method, parameter, content, response.status_code))
+
                 if response.status_code == 500:  # 处理没有捕获异常的情况
                     request_record_data = {
                         'method': method,