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

调用AWS get_dimension_key_details接口提示“Key ID无效”问题求助

DbiResourceID在list_available_resource_dimensions可用,但调用get_dimension_key_details时报“此Key ID无效”

按照文档要求,我传入DbiResourceID(例如db-ABCDEFGHIJKLMNOPQRSTU1VW2X)作为identifier参数值,调用list_available_resource_dimensions接口能正常返回结果,但调用get_dimension_key_details接口时却收到“此Key ID无效”的错误。AWS CLI中操作也出现相同现象。


调用list_available_resource_dimensions的成功示例

代码:

try:
    response_one = client.list_available_resource_dimensions(
        ServiceType=service_type,
        Identifier=identifier,
        Metrics=metrics
    )
    print(response_one)
except botocore.exceptions.ClientError as e:
    print(f"An error occurred: {e.response_one['Error']['Message']}")

输出:

{'MetricDimensions': [{'Metric': 'db.load', 'Groups': [{'Group': 'db.wait_event_type',      'Dimensions': [{'Identifier': 'db.wait_event_type.name'}]}, {'Group': 'db.user', 'Dimensions':     [{'Identifier': 'db.user.id'}, {'Identifier': 'db.user.name'}]}, {'Group': 'db.session_type', 'Dimensions': [{'Identifier': 'db.session_type.name'}]}, {'Group': 'db.sql_tokenized', 'Dimensions': [{'Identifier': 'db.sql_tokenized.id'}, {'Identifier': 'db.sql_tokenized.db_id'}, {'Identifier': 'db.sql_tokenized.statement'}]}, {'Group': 'db.wait_event', 'Dimensions': [{'Identifier': 'db.wait_event.name'}, {'Identifier': 'db.wait_event.type'}]}, {'Group': 'db.application', 'Dimensions': [{'Identifier': 'db.application.name'}]}, {'Group': 'db.host', 'Dimensions': [{'Identifier': 'db.host.id'}, {'Identifier': 'db.host.name'}]}, {'Group': 'db.sql', 'Dimensions': [{'Identifier': 'db.sql.id'}, {'Identifier': 'db.sql.db_id'}, {'Identifier': 'db.sql.statement'}, {'Identifier': 'db.sql.tokenized_id'}]}, {'Group': 'db', 'Dimensions': [{'Identifier': 'db.name'}]}]}], 'ResponseMetadata': {'RequestId': '', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Mon, 05 Jun 2023 20:52:04 GMT', 'content-type': 'application/x-amz-json-1.1', 'content-length': '982', 'connection': 'keep-alive', 'x-amzn-requestid': ''}, 'RetryAttempts': 0}}

调用get_dimension_key_details的失败示例

代码:

try:
    response = client.get_dimension_key_details(
        ServiceType=service_type,
        Identifier=identifier,
        Group=group,
        GroupIdentifier=group_identifier,
        RequestedDimensions=requested_dimensions
    )
    print(response)
except botocore.exceptions.ClientError as e:
    print(f"An error occurred: {e.response['Error']['Message']}")

输出:

An error occurred: This Key ID is not valid.

排查要点及解决方案

  • 校验Group和GroupIdentifier参数合法性:从list_available_resource_dimensions的返回结果中,确认传入的Group是存在的分组(比如db.sql、db.user),GroupIdentifier必须是该分组下对应的维度标识符(比如db.sql.id),不能使用不属于该分组的标识符。
  • 确认RequestedDimensions参数正确性:RequestedDimensions中的每个值必须是目标Group分组下返回的Dimensions里的Identifier,不能传入其他分组的维度。
  • 检查ServiceType参数一致性:确保两个接口使用的ServiceType完全一致,比如RDS对应的是DB,不能在一个接口用DB另一个用其他值。
  • 验证资源状态:确认对应的DB实例处于活跃运行状态,如果实例已停止、删除或处于异常状态,可能导致get_dimension_key_details无法识别该DbiResourceID,而list_available_resource_dimensions可能返回缓存数据。
  • 排查权限配置:确认执行调用的IAM实体(用户/角色)拥有cloudwatch:GetDimensionKeyDetails权限,虽然错误提示是Key ID无效,但权限不足也可能导致异常返回。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 15:40:05