【问题标题】:AWS API Gateway usage by API keyAPI 密钥的 AWS API Gateway 使用情况
【发布时间】:2018-09-17 13:13:37
【问题描述】:

如何通过 API 密钥从 AWS API Gateway 获取使用指标,例如使用计数器、使用日志等?

我目前正在将x-api-key 发送到我的集成端点以进行手动记录。我不希望这样做,让 AWS API Gateway 为我测量和报告这个指标。

【问题讨论】:

    标签: aws-api-gateway


    【解决方案1】:

    我发现所有的日志记录都不足以满足我的需要——尤其是它还没有记录每个 API 密钥(坚持认为这仍然是一个)。

    所以我创建了自己的自定义日志 -

    这样,我可以搜索我的 CloudWatch 日志并取回我想要的确切数据,甚至在需要时按 API 密钥;

    在我的阶段,我启用了“自定义访问日志”并使用了以下格式:

    注意:这些自定义日志,目前仅支持context 变量。

    • 等待input变量的支持:

    文档可以在这里找到:

    https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-reference

    有了这个自定义日志,我可以打开CloudWatch,按日期过滤并使用搜索字符串搜索我想要的任何内容(适合我的自定义日志);

    • 例如:对端点 /fees 上以 BcxvY1 结尾的任何 API 密钥发出的所有 GET 请求

    [RequestId,APIKeyText,APIKeyValue="*BcxvY1*",HTTPText,MethodText,HTTPMethodType="*GET*",PathText,PathValue="*/fees,",StatusText,StatusCode,ErrorsText,ErrorsValue,DescriptionText,DescriptionValue=custom_log]

    这样做的好处是完全可以定制。我可以根据我想要的结果更改我的搜索查询。根据需要使其更加/不那么复杂。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      到目前为止,Cloudwatch 中没有关键使用情况的指标。但是网关本身保留了一些使用统计,虽然不是很详细。

      使用计划概览:

      一个API Key的调用统计:

      【讨论】:

      猜你喜欢
      • 2019-01-07
      • 2020-09-25
      • 2017-01-22
      • 2020-12-12
      • 2017-05-01
      • 2018-02-01
      • 1970-01-01
      • 2020-02-13
      • 2020-10-05
      相关资源
      最近更新 更多