如何使用 Cloudformation 或 CDK 为 S3 存储桶启用请求指标
How to enable request metrics for S3 bucket using Cloudformation or CDK
我可以通过选中复选框 (https://ibb.co/bWDLcNT) 在 AWS 控制台中手动启用(S3 存储桶的请求指标,apid 选项)。但我正在尝试通过代码来做到这一点。我尝试寻找使用 CloudFormation / CDK(nodeJs) / AWS CLI 的解决方案。但没有运气。我找到的解决方案只是关于使用过滤器等创建指标,而不是关于启用它的。有什么建议吗?
您可以使用 MetricsConfiguration:
Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket.
示例为:
MyBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: somey-bucket-3344-name
MetricsConfigurations:
- Id: EntireBucket
注释EntireBucket。这是启用付费指标所需的 ID。
CDK equivalent for Marcin's answer would be to use the Bucket 结构:
new Bucket(this, 'metric-example-bucket', {
bucketName: "somey-bucket-3344-name",
metrics: [{
id: "EntireBucket"
}]
})
如果您已经在 CDK 中创建了该存储桶,则可以使用 addMetric() 方法:
existingBucket.addMetric({id: "EntireBucket"})
我可以通过选中复选框 (https://ibb.co/bWDLcNT) 在 AWS 控制台中手动启用(S3 存储桶的请求指标,apid 选项)。但我正在尝试通过代码来做到这一点。我尝试寻找使用 CloudFormation / CDK(nodeJs) / AWS CLI 的解决方案。但没有运气。我找到的解决方案只是关于使用过滤器等创建指标,而不是关于启用它的。有什么建议吗?
您可以使用 MetricsConfiguration:
Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket.
示例为:
MyBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: somey-bucket-3344-name
MetricsConfigurations:
- Id: EntireBucket
注释EntireBucket。这是启用付费指标所需的 ID。
CDK equivalent for Marcin's answer would be to use the Bucket 结构:
new Bucket(this, 'metric-example-bucket', {
bucketName: "somey-bucket-3344-name",
metrics: [{
id: "EntireBucket"
}]
})
如果您已经在 CDK 中创建了该存储桶,则可以使用 addMetric() 方法:
existingBucket.addMetric({id: "EntireBucket"})