我正在通过 Cloudformation 构建 Cloudwatch 仪表板。据我所知,您在构建指标时无法访问任何动态参数。它是否正确?除了硬编码引用之外,真的没有办法动态指定指标吗?我觉得这违背了云形成的目的。
又名类似下面的动态选择区域:
"widgets": [
{
"type": "metric",
"x": 0,
"y": 0,
"width": 20,
"height": 8,
"properties": {
"view": "timeSeries",
"stacked": false,
"metrics": [
[ "LambdaFunc", "STATISTIC", { "stat": "Sum" } ]
],
"title": "efficiency",
"region": "${AWS::Region}"
}
},
...
我尝试了多种组合/方法来引用 Cloudforamtion AWS::Region
参数。
真的是这样吗?
最佳答案
您可以使用Fn::Sub为了那个原因。例如:
MyDashboard:
Type: AWS::CloudWatch::Dashboard
Properties:
DashboardName: Dashboard1
DashboardBody: !Sub |
"widgets": [
{
"type": "metric",
"x": 0,
"y": 0,
"width": 20,
"height": 8,
"properties": {
"view": "timeSeries",
"stacked": false,
"metrics": [
[ "LambdaFunc", "STATISTIC", { "stat": "Sum" } ]
],
"title": "efficiency",
"region": "${AWS::Region}"
}
}
]
使用 JSON 模板时,通常对 Fn::Join 的结果使用 Fn::Sub以便于阅读格式。
关于amazon-web-services - 带参数的 AWS Cloudformation 指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48937378/