2017-09-29 105 views
1

我正在嘗試配置儀表板與基本小工具以公開CpUUtilization指標。 我無法引用先前創建的EC2實例,因爲看起來在描述儀表板的json中,!Ref函數未被解釋。AWS CloudWatch儀表板CloudFormation配置

metrics": [ 
     "AWS/EC2", 
     "CPUUtilization", 
     "InstanceId", 
     "!Ref Ec2Instance" 
] 

任何想法如何通過邏輯名稱引用呢?

回答

2

您可以使用Fn::Join將固有函數(如Ref)的輸出與字符串結合使用。例如:

CloudWatchDashboardHOSTNAME: 
    Type: "AWS::CloudWatch::Dashboard" 
    DependsOn: Ec2InstanceHOSTNAME 
    Properties: 
     DashboardName: HOSTNAME 
     DashboardBody: { "Fn::Join": [ "", ['{"widgets":[ 
      { 
      "type":"metric", 
      "properties":{ 
       "metrics":[ 
       ["AWS/EC2","CPUUtilization","InstanceId", 
       "', { Ref: Ec2InstanceHOSTNAME }, '"] 
       ], 
       "title":"CPU Utilization", 
       "period":60, 
       "region":"us-east-1" 
      } 
      }]}' ] ] } 

文檔: