0
特定のインスタンスからメトリックを取得することを目指していますが、リクエストを設定するたびにレスポンスは常に0データポイントを返すようです。AWS CloudWatch GetMetricStatisticsは0データポイントを返します
私はinstanceId
が私の相対的なインスタンスIDに設定されており、metricName
がCPUUtilizationに設定されているので、
public object GetMetric(string metricName, string instanceId)
{
var dimension = new Dimension
{
Name = "InstanceId",
Value = instanceId
};
var getMetricRequest = new GetMetricStatisticsRequest
{
Dimensions = new List<Dimension>() { dimension },
EndTime = DateTime.Today,
MetricName = metricName,
Namespace = "AWS/EC2",
Period = (int)TimeSpan.FromDays(1).TotalSeconds,
StartTime = DateTime.Today.Subtract(TimeSpan.FromDays(7)),
Statistics = new List<string> { "Maximum" },
Unit = StandardUnit.Percent
};
var getMetricResponse = client2.GetMetricStatistics(getMetricRequest);
return getMetricResponse;
}
のような要求を設定しています。私は小さなCPUスパイクを生成するためにインスタンス上でpowershellスクリプトを実行しているので、データがそこにあることがわかります。
文書によると、要求のプロパティは http://docs.aws.amazon.com/sdkfornet/v3/apidocs/Index.html
有効です私は明らかに何かが足りないのですか?私はどのようにデータを戻していないのか分かりません。私はパラメータをダブルチェックし、それらも正しいです。
いくつかの正当性チェック:クライアントの初期化方法を教えてください。また、応答はどのように見えますか?クライアントに提供した資格情報にこのアクションを実行するための十分な権限があることを確認してください。 –
'AmazonCloudWatchClient client2 = new AmazonCloudWatchClient();'今質問に対するレスポンスのスクリーンショットを追加し、資格情報に十分な特権があることをダブルチェックしました。 – Pudding
あなたのクライアント設定で指定されている正しい領域(ec2インスタンスが属する領域に一致していますか)はありますか? –