Cla*_*ise 3 javascript amazon-ecs typescript aws-fargate aws-cdk
我创建了一个 ECS 集群,如下所示:
this.cluster = new ecs.Cluster(this, 'Cluster', {
containerInsights: true,
vpc: ec2.Vpc.fromLookup(this, props.stage + 'Vpc', {isDefault: false})
});
Run Code Online (Sandbox Code Playgroud)
我想根据我的集群创建一个 CW 警报,如下所示:
const CPUHigh = new cw.Alarm(this, "CPUHigh", {
metric: this.cluster.metric("CPUUtilized"),
threshold: 50,
evaluationPeriods: 3,
period: cdk.Duration.seconds(60),
comparisonOperator: cw.ComparisonOperator.GREATER_THAN_THRESHOLD
})
Run Code Online (Sandbox Code Playgroud)
但即使该指标与 Container Insights 创建的指标相匹配,似乎也无法以这种方式引用。
有谁知道它应该如何引用?
CDK 仅支持某些指标基线,并且不涵盖容器洞察,但这不是问题,您可以非常轻松地创建自己的指标对象。对于容器洞察,它看起来像这样:
new cloudwatch.Metric({
metricName: 'NetworkTxBytes',
namespace: 'ECS/ContainerInsights',
dimensionsMap: {
ServiceName: props.ecsService.serviceName,
ClusterName: props.ecsCluster.clusterName,
},
statistic: 'avg',
period: cdk.Duration.minutes(5),
}),
Run Code Online (Sandbox Code Playgroud)
这里重要的是命名空间、dimensionMap 和 metricName。
您可以从指标控制台和最后一个选项卡“源”获取有关命名空间和维度的信息。
归档时间: |
|
查看次数: |
1802 次 |
最近记录: |