|
@@ -1,5 +1,18 @@
|
|
|
import os
|
|
|
from Ansjer.config import BASE_DIR
|
|
|
+import environ
|
|
|
+
|
|
|
+env = environ.Env(
|
|
|
+ DEBUG=(bool, False)
|
|
|
+)
|
|
|
+# 读取 .env 文件
|
|
|
+environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
|
|
|
+
|
|
|
+ACCESS_KEY_ID = env('ACCESS_KEY_ID', default='')
|
|
|
+SECRET_ACCESS_KEY = env('SECRET_ACCESS_KEY', default='')
|
|
|
+AWS_ACCESS_KEY_ID = env.list('AWS_ACCESS_KEY_ID', default=[])
|
|
|
+AWS_SECRET_ACCESS_KEY = env.list('AWS_SECRET_ACCESS_KEY', default=[])
|
|
|
+
|
|
|
|
|
|
SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
|
|
|
DEBUG = True
|
|
@@ -19,7 +32,11 @@ INSTALLED_APPS = [
|
|
|
'imagekit',
|
|
|
'Model',
|
|
|
'PushModel',
|
|
|
- 'django_apscheduler'
|
|
|
+ 'django_apscheduler',
|
|
|
+ 'AgentModel',
|
|
|
+ 'django_celery_beat',
|
|
|
+ 'Roomumy',
|
|
|
+ 'VodHlsOssModel'
|
|
|
]
|
|
|
|
|
|
MIDDLEWARE = [
|
|
@@ -74,16 +91,34 @@ TEMPLATES = [
|
|
|
WSGI_APPLICATION = 'Ansjer.cn_config.test_wsgi.application'
|
|
|
|
|
|
# 业务数据库
|
|
|
-DATABASE_DATA = 'ansjer_server_test'
|
|
|
-SERVER_HOST = '124.70.222.33'
|
|
|
-DATABASES_USER = 'root'
|
|
|
-DATABASES_PASS = 'Ansjer123'
|
|
|
+DATABASE_DATA = env('DATABASE_DATA')
|
|
|
+SERVER_HOST = env('SERVER_HOST')
|
|
|
+DATABASES_USER = env('DATABASES_USER')
|
|
|
+DATABASES_PASS = env('DATABASES_PASS')
|
|
|
|
|
|
# 推送数据库
|
|
|
-DATABASE_DATA2 = 'ansjer_push_test'
|
|
|
-SERVER_HOST2 = '124.70.222.33'
|
|
|
-DATABASES_USER2 = 'root'
|
|
|
-DATABASES_PASS2 = 'Ansjer123'
|
|
|
+DATABASE_DATA2 = env('DATABASE_DATA2')
|
|
|
+SERVER_HOST2 = env('SERVER_HOST2')
|
|
|
+DATABASES_USER2 = env('DATABASES_USER2')
|
|
|
+DATABASES_PASS2 = env('DATABASES_PASS2')
|
|
|
+
|
|
|
+# 业务代理客户数据库
|
|
|
+DATABASE_DATA3 = env('DATABASE_DATA3')
|
|
|
+SERVER_HOST3 = env('SERVER_HOST3')
|
|
|
+DATABASES_USER3 = env('DATABASES_USER3')
|
|
|
+DATABASES_PASS3 = env('DATABASES_PASS3')
|
|
|
+
|
|
|
+# 袋鼠妈妈数据库
|
|
|
+DATABASE_DATA4 = env('DATABASE_DATA4')
|
|
|
+SERVER_HOST4 = env('SERVER_HOST4')
|
|
|
+DATABASES_USER4 = env('DATABASES_USER4')
|
|
|
+DATABASES_PASS4 = env('DATABASES_PASS4')
|
|
|
+
|
|
|
+# OSS云存分表数据库
|
|
|
+DATABASE_DATA5 = env('DATABASE_DATA5')
|
|
|
+SERVER_HOST5 = env('SERVER_HOST5')
|
|
|
+DATABASES_USER5 = env('DATABASES_USER5')
|
|
|
+DATABASES_PASS5 = env('DATABASES_PASS5')
|
|
|
|
|
|
DATABASES = {
|
|
|
'default': {
|
|
@@ -116,6 +151,51 @@ DATABASES = {
|
|
|
'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
|
|
|
}
|
|
|
},
|
|
|
+ 'mysql03': {
|
|
|
+ 'ENGINE': 'django.db.backends.mysql',
|
|
|
+ 'NAME': DATABASE_DATA3,
|
|
|
+ 'USER': DATABASES_USER3,
|
|
|
+ 'PASSWORD': DATABASES_PASS3,
|
|
|
+ 'HOST': SERVER_HOST3,
|
|
|
+ 'PORT': '3306',
|
|
|
+ 'AUTOCOMMIT': True,
|
|
|
+ 'CONN_MAX_AGE': 60,
|
|
|
+ 'OPTIONS': {
|
|
|
+ 'charset': 'utf8mb4',
|
|
|
+ 'use_unicode': True,
|
|
|
+ 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ 'mysql04': {
|
|
|
+ 'ENGINE': 'django.db.backends.mysql',
|
|
|
+ 'NAME': DATABASE_DATA4,
|
|
|
+ 'USER': DATABASES_USER4,
|
|
|
+ 'PASSWORD': DATABASES_PASS4,
|
|
|
+ 'HOST': SERVER_HOST4,
|
|
|
+ 'PORT': '3306',
|
|
|
+ 'AUTOCOMMIT': True,
|
|
|
+ 'CONN_MAX_AGE': 60,
|
|
|
+ 'OPTIONS': {
|
|
|
+ 'charset': 'utf8mb4',
|
|
|
+ 'use_unicode': True,
|
|
|
+ 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ 'mysql05': {
|
|
|
+ 'ENGINE': 'django.db.backends.mysql',
|
|
|
+ 'NAME': DATABASE_DATA5,
|
|
|
+ 'USER': DATABASES_USER5,
|
|
|
+ 'PASSWORD': DATABASES_PASS5,
|
|
|
+ 'HOST': SERVER_HOST5,
|
|
|
+ 'PORT': '3306',
|
|
|
+ 'AUTOCOMMIT': True,
|
|
|
+ 'CONN_MAX_AGE': 60,
|
|
|
+ 'OPTIONS': {
|
|
|
+ 'charset': 'utf8mb4',
|
|
|
+ 'use_unicode': True,
|
|
|
+ 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
|
|
|
+ }
|
|
|
+ },
|
|
|
}
|
|
|
|
|
|
DATABASE_ROUTERS = ['Ansjer.database_router.DatabaseAppsRouter']
|
|
@@ -123,6 +203,9 @@ DATABASE_APPS_MAPPING = {
|
|
|
'Model': 'default',
|
|
|
'django_apscheduler': 'default',
|
|
|
'PushModel': 'mysql02',
|
|
|
+ 'AgentModel': 'mysql03',
|
|
|
+ 'Roomumy': 'mysql04',
|
|
|
+ 'VodHlsOssModel': 'mysql05'
|
|
|
}
|
|
|
|
|
|
AUTH_PASSWORD_VALIDATORS = [
|
|
@@ -140,6 +223,17 @@ AUTH_PASSWORD_VALIDATORS = [
|
|
|
},
|
|
|
]
|
|
|
|
|
|
+# celery配置,需要以CELERY_开头
|
|
|
+# 设置broker
|
|
|
+CELERY_BROKER_URL = 'redis://127.0.0.1:6379/0'
|
|
|
+# 设置结果存储
|
|
|
+CELERY_RESULT_BACKEND = 'redis://127.0.0.1:6379/1'
|
|
|
+
|
|
|
+# 配置定时任务
|
|
|
+CELERY_TIMEZONE = 'Asia/Shanghai'
|
|
|
+DJANGO_CELERY_BEAT_TZ_AWARE = True
|
|
|
+CELERY_BEAT_SCHEDULER = 'django_celery_beat.schedulers:DatabaseScheduler'
|
|
|
+
|
|
|
LANGUAGE_CODE = 'en-us'
|
|
|
TIME_ZONE = 'Asia/Shanghai'
|
|
|
# TIME_ZONE = 'UTC'
|
|
@@ -237,7 +331,7 @@ LOGGING = {
|
|
|
'level': 'INFO',
|
|
|
'class': 'logging.handlers.RotatingFileHandler',
|
|
|
'filename': BASE_DIR + '/static/log/info/info.log',
|
|
|
- 'backupCount': 10,
|
|
|
+ 'backupCount': 3,
|
|
|
'maxBytes': 1024 * 1024 * 2 * 1024, # 2G
|
|
|
'formatter': 'standard',
|
|
|
'encoding': 'utf-8',
|
|
@@ -246,17 +340,35 @@ LOGGING = {
|
|
|
'level': 'INFO',
|
|
|
'class': 'logging.handlers.RotatingFileHandler',
|
|
|
'filename': BASE_DIR + '/static/log/error_code/error_code.log',
|
|
|
- 'backupCount': 10,
|
|
|
+ 'backupCount': 3,
|
|
|
+ 'maxBytes': 1024 * 1024 * 2 * 1024, # 2G
|
|
|
+ 'formatter': 'standard',
|
|
|
+ 'encoding': 'utf-8',
|
|
|
+ },
|
|
|
+ 'success_code': {
|
|
|
+ 'level': 'INFO',
|
|
|
+ 'class': 'logging.handlers.RotatingFileHandler',
|
|
|
+ 'filename': BASE_DIR + '/static/log/success_code/success_code.log',
|
|
|
+ 'backupCount': 3,
|
|
|
'maxBytes': 1024 * 1024 * 2 * 1024, # 2G
|
|
|
'formatter': 'standard',
|
|
|
'encoding': 'utf-8',
|
|
|
},
|
|
|
'pay': {
|
|
|
'level': 'INFO',
|
|
|
- 'class': 'logging.handlers.TimedRotatingFileHandler',
|
|
|
+ 'class': 'logging.handlers.RotatingFileHandler',
|
|
|
'filename': BASE_DIR + '/static/log/pay/info.log',
|
|
|
- 'backupCount': 60,
|
|
|
- 'when': 'D',
|
|
|
+ 'backupCount': 3,
|
|
|
+ 'maxBytes': 1024 * 1024 * 2 * 1024, # 2G
|
|
|
+ 'formatter': 'standard',
|
|
|
+ 'encoding': 'utf-8',
|
|
|
+ },
|
|
|
+ 'apple_pay': {
|
|
|
+ 'level': 'INFO',
|
|
|
+ 'class': 'logging.handlers.RotatingFileHandler',
|
|
|
+ 'filename': BASE_DIR + '/static/log/apple_pay/apple_pay.log',
|
|
|
+ 'backupCount': 3,
|
|
|
+ 'maxBytes': 1024 * 1024 * 2 * 1024, # 2G
|
|
|
'formatter': 'standard',
|
|
|
'encoding': 'utf-8',
|
|
|
},
|
|
@@ -287,11 +399,21 @@ LOGGING = {
|
|
|
'level': 'INFO',
|
|
|
'propagate': False
|
|
|
},
|
|
|
+ 'success_code': {
|
|
|
+ 'handlers': ['success_code'],
|
|
|
+ 'level': 'INFO',
|
|
|
+ 'propagate': False
|
|
|
+ },
|
|
|
'pay': {
|
|
|
'handlers': ['pay'],
|
|
|
'level': 'INFO',
|
|
|
'propagate': False
|
|
|
},
|
|
|
+ 'apple_pay': {
|
|
|
+ 'handlers': ['apple_pay'],
|
|
|
+ 'level': 'INFO',
|
|
|
+ 'propagate': False
|
|
|
+ },
|
|
|
'token': {
|
|
|
'handlers': ['token'],
|
|
|
'level': 'INFO',
|