You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用CloudWatch get-metric-statistics获取S3桶每日增量返回空数组

S3 CloudWatch容量查询返回空数组排查方案
  • 时间范围配置不合理
    S3的BucketSizeBytes指标为每日推送一次,数据生成延迟最高可达24小时,你设置的结束时间为2021-10-31T00:00:00Z,会导致10月下旬还没来得及推送的指标无法被查询到,建议将结束时间延后1~2天,比如改为2021-11-02T00:00:00Z。
  • 维度参数不匹配
    你当前StorageType设为了StandardStorage,仅会查询标准存储类的容量,如果你的存储桶内有S3智能分层、低频访问、归档等其他存储类的对象,需要对应修改该参数的值;如果要查询全存储类的总容量,需要多次调用命令分别查询不同StorageType的结果再求和。
  • 桶和区域不匹配
    确认my-bucket存储桶的实际所属区域为eu-west-1,如果区域和桶名不对应,CloudWatch会直接返回空数组不会抛出异常。
  • 权限不足
    执行CLI命令的身份需要同时具备cloudwatch:GetMetricStatistics和s3:GetBucketMetricsConfiguration权限,权限不足时部分场景下不会返回权限报错,仅会返回空结果。
  • 查询语句过滤问题
    可以先移除命令中的--query 'Datapoints[*].[Timestamp, Maximum]'参数执行,确认原始返回结果是否有数据,避免query语法错误过滤了有效数据。
  • 存储桶无对应数据
    如果查询时间段内该存储桶的标准存储类没有任何对象,也会返回空数组,可以登录S3控制台直接查看桶的容量验证。

修正后的参考命令

aws cloudwatch get-metric-statistics \
  --metric-name BucketSizeBytes --namespace AWS/S3 \
  --start-time 2021-10-01T00:00:00Z --end-time 2021-11-02T00:00:00Z \
  --statistics Maximum --unit Bytes --region eu-west-1 \
  --dimensions Name=BucketName,Value=my-bucket Name=StorageType,Value=StandardStorage \
  --period 86400

内容的提问来源于stack exchange,提问作者Christian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 11:06:04