python - AWS X-Ray 在服务 map 中显示重复节点

标签 python amazon-web-services aws-lambda aws-sdk aws-xray

我刚刚开始使用 AWS Xray,并将其与 AWS Lambda 结合使用。问题是我注意到服务 map 上的 AWS Xray 节点重复。例如,SNS 被归类为 AWS::SNS远程调用。因为它们是同一件事,具有完全相同的轨迹和平均响应时间。只是显示为两个不同的节点。有谁知道如何减少这种噪音?

我正在使用 patch_all() 函数来修补所有服务。 以下是图片:Image 1 Image 2

这是痕迹的图像和要点。 Image SNS , Image Remote , Image Remote (details) , Image SNS(Details) , Gist

更新:

  • 我已经按照@Rohit 的要求添加了图片
  • 问题是用
  • 解决的

使用以下替换

from aws_xray_sdk.core import patch_all
patch_all()

//replaced by 

from aws_xray_sdk.core import patch
patch('boto3') //etc etc

最佳答案

你看到的节点来自这个PR https://github.com/aws/aws-xray-sdk-python/pull/19添加对 httplib 的支持。如果你使用 patch_all httplib 操作也会被捕获。在你的例子中,依赖树是 boto3 -> botocore -> vendored requests -> httplib。因此,您的 AWS 子分段将包含代表 httplib 执行的操作的子分段。

然而,服务图会将“远程”子分段呈现为您所看到的节点。推荐的方法是显式修补要捕获的库以避免意外行为。

关于python - AWS X-Ray 在服务 map 中显示重复节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49319575/

相关文章:

python - Python 中的双向链表

python - 如何取消透视多列数据?

python - 排序值,类型错误 : '<' not supported between instances of 'numpy.ndarray' and 'str'

python - 简单的 Python TCP 服务器不适用于 Amazon EC2 实例

amazon-web-services - 使用AWS ALB Ingress Controller在Kubernetes Pod中公开服务

ios - 如何使用 Lambda 验证 cognito id

python - 在列表中找到最小的唯一元素

java - AWS 可以用作 android 后端吗?或者后端程序使用 AWS?

python - Windows 上的无服务器部署

amazon-web-services - Appsync 查询联合返回类型抛出 400