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

使用AWS CLI/Boto3获取VPC端点CloudWatch数据返回空结果求助

解决VPC端点BytesProcessed指标查询返回空数据点的问题

核心问题分析

  1. 命名空间错误:你使用的AWS/PrivateLinkEndpoints不是VPC端点指标的正确命名空间,正确命名空间为AWS/PrivateLink。
  2. 缺少维度指定:CloudWatch控制台默认会自动选中具体的VPC端点维度,但CLI或boto3调用时必须显式指定维度(如VpcEndpointId),否则查询范围覆盖所有可能的资源,无法匹配到具体数据。
  3. CloudWatch对不存在的命名空间/指标名不会返回错误,只会返回空数据点,这就是你测试AWS/BlaBla也得到空响应的原因。

修正后的CLI命令

先通过以下命令获取你的VPC端点ID:

aws ec2 describe-vpc-endpoints --query 'VpcEndpoints[*].VpcEndpointId'

替换下面的your-vpc-endpoint-id后执行查询:

aws cloudwatch get-metric-statistics \
    --namespace AWS/PrivateLink \
    --metric-name BytesProcessed \
    --start-time 2023-04-30T09:00:00Z \
    --end-time 2023-04-30T09:30:00Z \
    --period 300 \
    --statistics Average \
    --dimensions Name=VpcEndpointId,Value=your-vpc-endpoint-id

修正后的boto3代码

补充datetime导入并指定VPC端点ID维度:

import boto3
from datetime import datetime

client = boto3.client("cloudwatch")
 
response = client.get_metric_statistics(
    Namespace='AWS/PrivateLink',
    MetricName='BytesProcessed',
    StartTime=datetime(2023, 4, 30, 9, 0),
    EndTime=datetime(2023, 4, 30, 9, 30),
    Period=300,
    Statistics=['Average'],
    Dimensions=[
        {
            'Name': 'VpcEndpointId',
            'Value': 'your-vpc-endpoint-id'
        }
    ]
)

print(response)

额外说明

如果需要按服务名称查询,可将维度替换为Name=ServiceName,Value=com.amazonaws.region.s3(替换为你实际使用的私有链路服务名称)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 03:15:10