peng 2 anni fa
parent
commit
cffe51af65
2 ha cambiato i file con 79 aggiunte e 3 eliminazioni
  1. 73 0
      VSeesResourceWeb/settings.py
  2. 6 3
      background/views.py

+ 73 - 0
VSeesResourceWeb/settings.py

@@ -139,3 +139,76 @@ STATIC_URL = '/static/'
 # https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field
 
 DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
+LOGGING = {
+    'version': 1,
+    'disable_existing_loggers': True,
+    'formatters': {
+        'error_format': {
+            'format': '%(asctime)s %(threadName)s %(thread)d %(lineno)d %(levelname)s %(message)s'
+        },
+        'standard': {
+            'format': '[%(asctime)s] [%(filename)s:%(lineno)d] [%(module)s:%(funcName)s] '
+                      '[%(levelname)s]- %(message)s'},
+
+    },
+    'filters': {
+    },
+    'handlers': {
+        'mail_admins': {
+            'level': 'ERROR',
+            'class': 'django.utils.log.AdminEmailHandler',
+            'include_html': True,
+        },
+        'default': {
+            'level': 'ERROR',
+            'class': 'logging.handlers.TimedRotatingFileHandler',
+            'filename': BASE_DIR / 'background/static/log/error/error.log',
+            'backupCount': 30,
+            'when': 'D',
+            'formatter': 'error_format',
+        },
+        'console': {
+            'level': 'ERROR',
+            'class': 'logging.StreamHandler',
+            'formatter': 'error_format'
+        },
+        'info': {
+            'level': 'INFO',
+            'class': 'logging.handlers.TimedRotatingFileHandler',
+            'filename': BASE_DIR / 'background/static/log/info/info.log',
+            'backupCount': 30,
+            'when': 'D',
+            'formatter': 'standard',
+            'encoding': 'utf-8',
+        },
+        'pay': {
+            'level': 'INFO',
+            'class': 'logging.handlers.TimedRotatingFileHandler',
+            'filename': BASE_DIR / 'background/static/log/pay/info.log',
+            'backupCount': 60,
+            'when': 'D',
+            'formatter': 'standard',
+            'encoding': 'utf-8',
+        },
+    },
+    'loggers': {
+        'django': {
+            'handlers': ['default', 'console'],
+            # 'handlers': ['mail_admins','default','console'],
+            # 'level': 'ERROR',
+            'level': 'ERROR',
+            'propagate': False
+        },
+        # log 调用时需要当作参数传入
+        'info': {
+            'handlers': ['info'],
+            'level': 'INFO',
+            'propagate': False
+        },
+        'pay': {
+            'handlers': ['pay'],
+            'level': 'INFO',
+            'propagate': False
+        },
+    }
+}

+ 6 - 3
background/views.py

@@ -2,7 +2,7 @@
 import hashlib
 import time
 import uuid
-
+import logging
 import requests
 from rest_framework.views import APIView
 from rest_framework.viewsets import ModelViewSet
@@ -16,6 +16,7 @@ from rest_framework.response import Response
 
 s3_obj = AmazonS3Util()
 bucket = 'ansjerfilemanager'
+LOGGER = logging.getLogger('info')
 
 
 class ProductInfoSet(ModelViewSet):
@@ -137,7 +138,6 @@ class WechatLoginView(APIView):
             return Response({'code': 444, 'result': {'error_msg': '缺少参数'}})
         # 验证state,获取token
         access_token = cls.get_access_token(state)
-
         if not access_token:
             return Response({'code': 120, 'result': {'error_msg': '获取token失败'}})
         data = {
@@ -173,6 +173,7 @@ class WechatLoginView(APIView):
         if state_val:
             redis_client.del_data(state)
         else:
+            LOGGER.info('企业微信扫码登录,state:{}获取失败'.format(state))
             return False
         access_token = redis_client.get_data(key='enterprise_wechat_access_token')
         if access_token:
@@ -192,8 +193,10 @@ class WechatLoginView(APIView):
             if flag:
                 return access_token
             else:
-                return flag
+                LOGGER.info('企业微信扫码登录,access_token:{}储存失败'.format(access_token))
+                return False
         else:
+            LOGGER.info('企业微信扫码登录,access_token获取失败')
             return False
 
     @classmethod