从 API 网关的 X-Ray 跟踪日志中排除查询参数
Exclude query parameters from API Gateway's X-Ray tracing logs
我有一个 AWS Lambda 函数,它与 AWS API 网关 API 有很多集成。 API 已检查 Enable X-Ray Tracing
且跟踪已正确填充。
在 "AWS X-Ray Dashboard > Traces > Trace overview" 下,我按 "URL" 对痕迹进行分组。但是,API 的用户使用查询参数发出请求,这些查询参数是仅基于查询参数本身的唯一 URL。
例如,有一条路由 /plans
,用户将使用两个查询参数 token=abc123×tamp=159501493
向该路由发出请求。由于查询参数中包含与时间戳一样独特的内容,因此不会将任何跟踪组合在一起,从而导致数百个 /plans
具有不同时间戳的跟踪。大量的痕迹使得任何试图从 X-Ray 的痕迹中收集有用信息的尝试都是不可能的。
我同时禁用了 X 射线追踪。现在,这个问题是否有任何解决方案,或者我是否运气不好,直到 AWS 开发人员对此实施修复?
更新:03/05 - 此更改应该适用于所有客户。
对于您遇到的困难,我们深表歉意。 APIGW 和其他 X-Ray 集成服务独立记录数据并将数据发送到 X-Ray 服务,因此很遗憾,目前无法为您提供解决方法。
我已经向 APIGW 团队提出了一个问题来解决这个问题。再次抱歉这个问题,我会在有更多信息时更新。
桑德拉
更新:03/05 - 此更改应该适用于所有客户。短期变化是清理参数(就像我们今天的 SDK 所做的那样),长期我们将讨论 "opt in" 查询参数的选项。
我有一个 AWS Lambda 函数,它与 AWS API 网关 API 有很多集成。 API 已检查 Enable X-Ray Tracing
且跟踪已正确填充。
在 "AWS X-Ray Dashboard > Traces > Trace overview" 下,我按 "URL" 对痕迹进行分组。但是,API 的用户使用查询参数发出请求,这些查询参数是仅基于查询参数本身的唯一 URL。
例如,有一条路由 /plans
,用户将使用两个查询参数 token=abc123×tamp=159501493
向该路由发出请求。由于查询参数中包含与时间戳一样独特的内容,因此不会将任何跟踪组合在一起,从而导致数百个 /plans
具有不同时间戳的跟踪。大量的痕迹使得任何试图从 X-Ray 的痕迹中收集有用信息的尝试都是不可能的。
我同时禁用了 X 射线追踪。现在,这个问题是否有任何解决方案,或者我是否运气不好,直到 AWS 开发人员对此实施修复?
更新:03/05 - 此更改应该适用于所有客户。
对于您遇到的困难,我们深表歉意。 APIGW 和其他 X-Ray 集成服务独立记录数据并将数据发送到 X-Ray 服务,因此很遗憾,目前无法为您提供解决方法。
我已经向 APIGW 团队提出了一个问题来解决这个问题。再次抱歉这个问题,我会在有更多信息时更新。
桑德拉
更新:03/05 - 此更改应该适用于所有客户。短期变化是清理参数(就像我们今天的 SDK 所做的那样),长期我们将讨论 "opt in" 查询参数的选项。