Я пытаюсь создать простой плагин Python, который возвращает метрики на DynamodB, но я могу только заставить его вернуть пустую точку данных.
#!/usr/bin/env python
import sys
import boto3
import time
import optparse
from pprint import pprint
from datetime import datetime
from datetime import timedelta
def initialize_client():
client = boto3.client(
'cloudwatch',
aws_access_key_id = 'xxxxx',
aws_secret_access_key = 'xxxxx',
region_name = 'us-east-2'
)
return client
def request_metric(client):
response = client.get_metric_statistics(
Namespace = 'AWS/DynamoDB',
Period = 120,
StartTime = datetime.utcnow() - timedelta(days=2),
EndTime = datetime.utcnow(),
MetricName = 'ConsumedWriteCapacityUnits',
Statistics=['Average'],
Dimensions = [
{
'Name': 'TableName',
'Value': 'test'
}
],
)
return response
def main():
client = initialize_client()
response = request_metric(client)
pprint(response)
return 0
main()
Вот вывод, который я получаю:
{u'Datapoints': [],
u'Label': 'ConsumedWriteCapacityUnits',
'ResponseMetadata': {'HTTPHeaders': {'content-length': '349',
'content-type': 'text/xml',
'date': 'Wed, 22 Aug 2018 20:57:44 GMT',
'x-amzn-requestid': 'xxxxx'},
'HTTPStatusCode': 200,
'RequestId': 'xxxxx',
'RetryAttempts': 0}}
Мне удалось заставить его работать с RDS, но я не могу заставить DynamoDB возвращать точки данных. Что мне здесь не хватает?