Использование псевдо-переменных в шаблоне панели мониторинга Cloudwatch (Cloudformation) - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь настроить шаблон для формирования облака для создания Cloudwatch-Dashboard.В этом контексте я хочу использовать псевдопеременную для определения региона.

Если я просто использую псевдопеременную AWS::Region, кажется, код не работает:

AutoscalingDashboard:
Type: AWS::CloudWatch::Dashboard
Properties:
  DashboardName: AutoscalingDashboard
  DashboardBody: '
     {
      "widgets":[
        {
            "type":"metric",
            "x":0,
            "y":0,
            "width":12,
            "height":6,
            "properties":{
                "metrics":[
                    [ "AWS/ECS", "MemoryUtilization", "ServiceName", "invoice_web", "ClusterName", "InvoicegenappCluster" ],
                    [ "...", "invoice_data", ".", "." ],
                    [ "...", "invoice_generator", ".", "." ]
                ],
                "region": "AWS::Region",
                "period": 300,
                "view": "timeSeries",
                "title":"ECS MemoryUtilization",
                "stacked": false
            }

Как я могуиспользовать псевдо-переменную AWS::Region или Ref для динамического хранения переменных?

Merci A

1 Ответ

0 голосов
/ 19 октября 2018

В вашем примере DashboardBody является строкой, поэтому AWS::Region не будет заменено.Вероятно, вам будет лучше, если вы добавите функцию Fn::Sub, например:

AutoscalingDashboard:
  Type: 'AWS::CloudWatch::Dashboard'
  Properties:
    DashboardName: 'AutoscalingDashboard'
    DashboardBody: !Sub >-
     {
      "widgets":[
         {
            "type":"metric",
            "x":0,
            "y":0,
            "width":12,
            "height":6,
            "properties":{
                "metrics":[
                    [ "AWS/ECS", "MemoryUtilization", "ServiceName", "invoice_web", "ClusterName", "InvoicegenappCluster" ],
                    [ "...", "invoice_data", ".", "." ],
                    [ "...", "invoice_generator", ".", "." ]
                ],
                "region": "${AWS::Region}",
                "period": 300,
                "view": "timeSeries",
                "title":"ECS MemoryUtilization",
                "stacked": false
            }           
          }]
      }

Обратите внимание на ${} вокруг области, а также на строку блока YAML >-.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...