|
@@ -29,7 +29,7 @@ from Controller.PaymentCycle import Paypal
|
|
|
from Model.models import Device_Info, Order_Model, Store_Meal, VodHlsModel, UID_Bucket, StsCrdModel, \
|
|
|
ExperienceContextModel, Pay_Type, CDKcontextModel, Device_User, SysMsgModel, Unused_Uid_Meal, PromotionRuleModel, \
|
|
|
VideoPlaybackTimeModel, CouponModel, VodBucketModel, VodHlsSummary, AiService, UidSetModel, UidPushModel, \
|
|
|
- VodHlsTagType, ICloudStoreMeal, IcloudUseDetails, IcloudService
|
|
|
+ VodHlsTagType, ICloudStoreMeal, IcloudUseDetails, IcloudService, StsFrequency
|
|
|
from Object.AWS.AmazonS3Util import AmazonS3Util
|
|
|
from Object.AWS.S3Email import S3Email
|
|
|
from Object.AliPayObject import AliPayObject
|
|
@@ -238,12 +238,14 @@ class CloudStorageView(View):
|
|
|
discount_content=F('lang__discount_content'))
|
|
|
if is_ios:
|
|
|
store_qs = store_qs.order_by('sort').values(
|
|
|
- "id", "title", "content", "price", "day", "currency", "bucket__storeDay", "new_title", "bucket__bucket",
|
|
|
+ "id", "title", "content", "price", "day", "currency", "bucket__storeDay", "new_title",
|
|
|
+ "bucket__bucket",
|
|
|
"bucket__area", "commodity_code", "commodity_type", "is_discounts", "virtual_price", "expire",
|
|
|
"discount_price", "discount_content", "symbol", "cycle_config_id", "product_id")
|
|
|
else:
|
|
|
store_qs = store_qs.order_by('sort').values(
|
|
|
- "id", "title", "content", "price", "day", "currency", "bucket__storeDay", "new_title", "bucket__bucket",
|
|
|
+ "id", "title", "content", "price", "day", "currency", "bucket__storeDay", "new_title",
|
|
|
+ "bucket__bucket",
|
|
|
"bucket__area", "commodity_code", "commodity_type", "is_discounts", "virtual_price", "expire",
|
|
|
"discount_price", "discount_content", "symbol", "cycle_config_id")
|
|
|
|
|
@@ -412,16 +414,20 @@ class CloudStorageView(View):
|
|
|
res = {'code': 405, 'msg': 'Not purchased or expired!'}
|
|
|
return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
|
|
|
|
|
|
- # 统计sts请求次数,一小时超过15次进行报警
|
|
|
+ # 统计sts请求次数,一小时超过20次进行报警
|
|
|
redis_obj = RedisObject()
|
|
|
key = 'sts_count_{}'.format(uid)
|
|
|
sts_count = redis_obj.get_data(key)
|
|
|
if sts_count:
|
|
|
sts_count = int(sts_count)
|
|
|
- if sts_count % 15 == 0:
|
|
|
- # 发送邮件
|
|
|
- email_content = '{}服务器设备{}请求sts令牌频率过高'.format(CONFIG_INFO, uid)
|
|
|
- S3Email().faEmail(email_content, 'servers@ansjer.com')
|
|
|
+ if sts_count % 20 == 0:
|
|
|
+ sts_frequency_qs = StsFrequency.objects.filter(uid=uid)
|
|
|
+ if sts_frequency_qs.exists():
|
|
|
+ sts_frequency_qs[0].frequency += 1
|
|
|
+ sts_frequency_qs[0].updateTime = now_time
|
|
|
+ sts_frequency_qs[0].save()
|
|
|
+ else:
|
|
|
+ StsFrequency.objects.create(uid=uid, frequency=1, addTime=now_time, updateTime=now_time)
|
|
|
sts_count += 1
|
|
|
ttl = redis_obj.get_ttl(key)
|
|
|
else:
|