【问题标题】:AWS CloudWatch GetMetricStatistics returns 0 datapointsAWS CloudWatch GetMetricStatistics 返回 0 个数据点
【发布时间】:2016-05-17 13:10:01
【问题描述】:

我的目标是从特定实例中提取一些指标,但似乎每次我设置请求时,响应总是返回 0 个数据点。

我正在这样设置请求

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; 
    }

instanceId 设置为我的相对实例 ID,metricName 设置为 CPUUtilization。我在实例上运行一个 powershell 脚本来生成小的 cpu 峰值,所以我知道数据在那里。

根据文档,请求中的属性是有效的 http://docs.aws.amazon.com/sdkfornet/v3/apidocs/Index.html

我是否遗漏了一些明显的东西?我不明白我怎么没有得到任何数据。我仔细检查了参数,它们也是正确的。

编辑:

【问题讨论】:

  • 一些健全性检查:您能告诉我们您是如何初始化客户端的吗?另外,响应是什么样的?您确定您提供给客户端的凭据有足够的权限来执行此操作吗?
  • AmazonCloudWatchClient client2 = new AmazonCloudWatchClient(); 我现在将添加对问题的响应的屏幕截图,我只是仔细检查了凭据是否有足够的权限。
  • 在您的客户端配置中是否指定了正确的区域(与您的 ec2 实例所属的区域匹配)?
  • 我在配置中将 EC2 客户端的密钥设置为 &lt;add key="AWSRegion" value="eu-west-1"/&gt;。 cloudwatch 有什么不同吗?

标签: c# .net amazon-web-services amazon-cloudwatch


【解决方案1】:

我现在正在获取数据点。我想将统计信息发送到 Cloud Watch 只需要一段时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-17
    • 1970-01-01
    • 2012-07-26
    • 1970-01-01
    • 2022-11-03
    • 1970-01-01
    • 2018-12-19
    • 1970-01-01
    相关资源
    最近更新 更多