【问题标题】:Data points are empty on using AWS cli on powershell在 powershell 上使用 AWS cli 时数据点为空
【发布时间】:2017-06-28 05:49:52
【问题描述】:

我正在尝试使用 Powershell 获取我的 ec2 实例的统计信息。在运行时,我只是得到空数据点。有什么解决办法吗?

代码如下:

Get-CWMetricStatistics -MetricName CPUUtilization 
                    -Dimension @{Name = "InstanceId"; Value = "08b290d4ab98f79c3"} 
                    -StartTime (Get-Date).AddDays(-1) 
                    -EndTime (Get-Date) 
                    -Namespace "AWS/EC2" 
                    -Period 60 
                    -Statistic Average

输出:

Datapoints Label         
---------- -----
{}         CPUUtilization

【问题讨论】:

  • 我对 AWS CLI 一无所知,但 -Dimension @{Name = "InstanceId"; Value = "08b290d4ab98f79c3"} 看起来不适合普通 PowerShell,我希望看到 -Dimension @{'InstanceId'='08b290d4ab98f79c3'}

标签: powershell amazon-web-services amazon-ec2 amazon-cloudwatch aws-powershell


【解决方案1】:

回答问题:

由于许多原因,可能会返回空数据点输出,但通常意味着 CloudWatch 中没有针对您的给定输入的数据。确保您的输入正确,并且有给定时间段的数据。

我能够在以下场景中重现空数据点,让您了解这会如​​何产生空结果:

  • 更改了我的 InstanceId 上的一个字母,使其与我的任何实例都不匹配;这不会出错,只会产生空数据集。
  • 将时间范围更改为实例处于运行状态之前。
  • 在 powershell 中使用了不正确的权限,因此我使用的配置文件无权查看我请求的实例。

不管怎样,你的语法是有效的。我针对我自己的一个实例测试了您的确切 cmdlet,它运行良好。一旦您的示例工作,您可以通过管道生成的集合并解析它们来获取原始数据点。例如,假设您的 cmdlet 的输出位于 $datapoints

$datapoints | % { $_.Datapoints.Average }

回答评论:

语法 -Dimension @{Name = "InstanceId"; Value = "08b290d4ab98f79c3"} 对此 cmdlet 有效。它看起来很奇怪,因为 Get-CWMetricStatistics cmdlet 期望您传入 AWS.CloudWatch.Model.Dimension 对象的集合。

在此示例中,具有匹配属性名称(名称和值)的哈希表就足够了,但给定示例 @{'InstanceId'='08b290d4ab98f79c3'} 不会,因为 AWS.CloudWatch.Model.Dimension 上没有“InstanceId”参数。

实际上,运行返回这个错误:

Get-CWMetricStatistics:无法绑定参数“维度”。不能 创建类型的对象 “Amazon.CloudWatch.Model.Dimension”。找不到 Amazon.CloudWatch.Model.Dimension 的 InstanceId 属性 目的。可用的属性是: [Name ] , [Value ]

然后考虑传递哈希表集合是此 cmdlet 的有效输入:

-Dimension @(@{Name = "InstanceId"; Value = "i-abcd1234"},@{Name = "InstanceId"; Value = "i-efgh5678"})

延伸阅读:

AWS PowerShell Documentation - Get-CWMetricStatistics

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-01
    • 2016-11-18
    • 2018-07-10
    • 2015-10-12
    相关资源
    最近更新 更多