|
@@ -1,5 +1,6 @@
|
|
# -*- coding: utf-8 -*-
|
|
# -*- coding: utf-8 -*-
|
|
import time
|
|
import time
|
|
|
|
+from datetime import date, timedelta, timezone as asj_timezone
|
|
|
|
|
|
import boto3
|
|
import boto3
|
|
from django.db.models import Count,Q
|
|
from django.db.models import Count,Q
|
|
@@ -600,28 +601,34 @@ class AdminManage(TemplateView):
|
|
|
|
|
|
start_time = request_dict.get('start_time', None)
|
|
start_time = request_dict.get('start_time', None)
|
|
end_time = request_dict.get('end_time', None)
|
|
end_time = request_dict.get('end_time', None)
|
|
|
|
+ tz = request_dict.get('tz', None)
|
|
|
|
|
|
- if start_time is None or end_time is None:
|
|
|
|
|
|
+ if start_time is None or end_time is None or tz is None:
|
|
return response.json(444)
|
|
return response.json(444)
|
|
|
|
|
|
date = datetime.datetime(2020, 9, 15)
|
|
date = datetime.datetime(2020, 9, 15)
|
|
- start_time = date.fromtimestamp(int(start_time))
|
|
|
|
|
|
+ tmp_time = 3600 * float(tz)
|
|
|
|
+ start_time = date.fromtimestamp((int(start_time)))
|
|
end_time = date.fromtimestamp(int(end_time))
|
|
end_time = date.fromtimestamp(int(end_time))
|
|
|
|
+ tz = int(tz)
|
|
|
|
|
|
cloudwatch = boto3.client('cloudwatch', region_name=AWS_SES_ACCESS_REGION_WEST, aws_access_key_id=AWS_SES_ACCESS_ID,
|
|
cloudwatch = boto3.client('cloudwatch', region_name=AWS_SES_ACCESS_REGION_WEST, aws_access_key_id=AWS_SES_ACCESS_ID,
|
|
aws_secret_access_key=AWS_SES_ACCESS_SECRET)
|
|
aws_secret_access_key=AWS_SES_ACCESS_SECRET)
|
|
try:
|
|
try:
|
|
result = cloudwatch.get_metric_statistics(Namespace='AWS/EC2', MetricName='CPUUtilization',
|
|
result = cloudwatch.get_metric_statistics(Namespace='AWS/EC2', MetricName='CPUUtilization',
|
|
- StartTime=start_time,
|
|
|
|
- EndTime=end_time, Period=60,
|
|
|
|
- Statistics=['Average'], Dimensions=[{'Name': 'InstanceId','Value': 'i-0596e00c9af077027'}])
|
|
|
|
|
|
+ StartTime=start_time,
|
|
|
|
+ EndTime=end_time, Period=60,
|
|
|
|
+ Statistics=['Average'],
|
|
|
|
+ Dimensions=[
|
|
|
|
+ {'Name': 'InstanceId', 'Value': 'i-0596e00c9af077027'}])
|
|
datas = result['Datapoints']
|
|
datas = result['Datapoints']
|
|
datas.sort(key=getCompareKey)
|
|
datas.sort(key=getCompareKey)
|
|
result = []
|
|
result = []
|
|
for data in datas:
|
|
for data in datas:
|
|
tmp = data
|
|
tmp = data
|
|
- time = str(data['Timestamp'])
|
|
|
|
- tmp['Timestamp'] = time[0:time.find('+')]
|
|
|
|
|
|
+ utcdt = data['Timestamp']
|
|
|
|
+ time1 = str(utcdt.astimezone(asj_timezone(timedelta(hours=int(-tz)))))
|
|
|
|
+ tmp['Timestamp'] = time1[0:time1.find('+')]
|
|
result.append(tmp)
|
|
result.append(tmp)
|
|
return response.json(0, result)
|
|
return response.json(0, result)
|
|
except Exception as e:
|
|
except Exception as e:
|