首页 文章

通过PowerShell进行CloudWatch警报 - InstanceName问题

提问于
浏览
0

我想在实例启动时自动创建CloudWatch警报(通过AutoScaling,CLI或其他) .

我的实例正在运行Windows,因此我在Task Scheduler中创建了执行PowerShell脚本的任务 .

此脚本使用Write-CWMetricAlarm cmdlet创建CloudWatch警报 - http://prntscr.com/e6xptj

它适用于自定义指标,如Windows / Default,但对于AWS / EC2 InstanceName也是必需的 - http://prntscr.com/e6xq18

但InstanceName没有维度 - http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ec2-metricscollected.html

..以及Write-CWMetricAlarm Cmdlet没有合适的参数 - http://docs.aws.amazon.com/powershell/latest/reference/Index.html

那么关于如何解决这个问题的任何想法?

提前致谢!

1 回答

  • 1

    实例名称实际上只是标签(带有“名称”键),控制台为它们提供了特殊处理,使它们显示为一流的项目 . 它们也不需要是唯一的,因此使用“名称”不会使CloudWatch能够区分不同的实例,从警报的角度来看使事情变得混乱 .

    因此我认为你需要使用实例id值 . 在您的脚本中,我注意到您正在使用Invoke-Restmethod来获取它 - 您可能有兴趣知道您也可以使用cmdlet获取此值:

    Get-EC2InstanceMetadata -Category InstanceId
    

相关问题